<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Aria: ArLaser Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Aria
   &#160;<span id="projectnumber">2.9.4</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classArLaser.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#pro-static-attribs">Static Protected Attributes</a> &#124;
<a href="classArLaser-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">ArLaser Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span><div class="ingroups"><a class="el" href="group__ImportantClasses.html">Important Classes</a> &#124; <a class="el" href="group__DeviceClasses.html">Device Interface Classes</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p><a class="el" href="classArRangeDevice.html" title="The base class for all sensing devices which return range information from the device (mounted on a r...">ArRangeDevice</a> interface specialized for laser rangefinder sensors; see <a class="el" href="classArRangeDevice.html" title="The base class for all sensing devices which return range information from the device (mounted on a r...">ArRangeDevice</a> for more data access methods.  
 <a href="classArLaser.html#details">More...</a></p>

<p><code>#include &lt;ArLaser.h&gt;</code></p>

<p>Inherits <a class="el" href="classArRangeDeviceThreaded.html">ArRangeDeviceThreaded</a>.</p>

<p>Inherited by <a class="el" href="classArLaserFilter.html">ArLaserFilter</a>, <a class="el" href="classArLMS1XX.html">ArLMS1XX</a>, <a class="el" href="classArLMS2xx.html">ArLMS2xx</a>, <a class="el" href="classArS3Series.html">ArS3Series</a>, <a class="el" href="classArSimulatedLaser.html">ArSimulatedLaser</a>, <a class="el" href="classArSZSeries.html">ArSZSeries</a>, <a class="el" href="classArUrg.html">ArUrg</a>, and <a class="el" href="classArUrg__2__0.html">ArUrg_2_0</a>.</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a236f9d156f2d15473e9df61fc70a2581"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a236f9d156f2d15473e9df61fc70a2581"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a236f9d156f2d15473e9df61fc70a2581">addConnectCB</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor, int position=50)</td></tr>
<tr class="memdesc:a236f9d156f2d15473e9df61fc70a2581"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a connect callback. <br /></td></tr>
<tr class="separator:a236f9d156f2d15473e9df61fc70a2581"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa06346a8a6119467ededf5be8c233ef2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa06346a8a6119467ededf5be8c233ef2"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#aa06346a8a6119467ededf5be8c233ef2">addDisconnectNormallyCB</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor, int position=50)</td></tr>
<tr class="memdesc:aa06346a8a6119467ededf5be8c233ef2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a callback for when disconnect is called while connected. <br /></td></tr>
<tr class="separator:aa06346a8a6119467ededf5be8c233ef2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64e315ae4a8d14484cd3b4a49fe0c0d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a64e315ae4a8d14484cd3b4a49fe0c0d4"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a64e315ae4a8d14484cd3b4a49fe0c0d4">addDisconnectOnErrorCB</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor, int position=50)</td></tr>
<tr class="memdesc:a64e315ae4a8d14484cd3b4a49fe0c0d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a callback for when disconnection happens because of an error. <br /></td></tr>
<tr class="separator:a64e315ae4a8d14484cd3b4a49fe0c0d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19cbbbe1eac0dbbe2dbab7662de213fc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a19cbbbe1eac0dbbe2dbab7662de213fc"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a19cbbbe1eac0dbbe2dbab7662de213fc">addFailedConnectCB</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor, int position=50)</td></tr>
<tr class="memdesc:a19cbbbe1eac0dbbe2dbab7662de213fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a callback for when a connection to the robot is failed. <br /></td></tr>
<tr class="separator:a19cbbbe1eac0dbbe2dbab7662de213fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9bdb83984b69159c1d60313d97e02462"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a9bdb83984b69159c1d60313d97e02462">addIgnoreReading</a> (double ignoreReading)</td></tr>
<tr class="memdesc:a9bdb83984b69159c1d60313d97e02462"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a degree at which to ignore readings (within 1 degree of nearest integer)  <a href="#a9bdb83984b69159c1d60313d97e02462">More...</a><br /></td></tr>
<tr class="separator:a9bdb83984b69159c1d60313d97e02462"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4195556a757928218c50bda74de7541"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#af4195556a757928218c50bda74de7541">addIgnoreReadings</a> (const char *ignoreReadings)</td></tr>
<tr class="memdesc:af4195556a757928218c50bda74de7541"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a series of degree at which to ignore readings (within 1 degree of nearest integer)  <a href="#af4195556a757928218c50bda74de7541">More...</a><br /></td></tr>
<tr class="separator:af4195556a757928218c50bda74de7541"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65107d045d7fc92187fa42bb4aff651f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65107d045d7fc92187fa42bb4aff651f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a65107d045d7fc92187fa42bb4aff651f">addReadingCB</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor, int position=50)</td></tr>
<tr class="memdesc:a65107d045d7fc92187fa42bb4aff651f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a callback that is called whenever a laser reading is processed. <br /></td></tr>
<tr class="separator:a65107d045d7fc92187fa42bb4aff651f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a550a8f6002f7c6be0755d4ca5eb064a9"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a550a8f6002f7c6be0755d4ca5eb064a9">applyTransform</a> (<a class="el" href="classArTransform.html">ArTransform</a> trans, bool doCumulative=true)</td></tr>
<tr class="memdesc:a550a8f6002f7c6be0755d4ca5eb064a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Applies a transform to the buffers.  <a href="#a550a8f6002f7c6be0755d4ca5eb064a9">More...</a><br /></td></tr>
<tr class="separator:a550a8f6002f7c6be0755d4ca5eb064a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a272fb0a8c6d5b18badb0d9686c8fb33f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a272fb0a8c6d5b18badb0d9686c8fb33f"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a272fb0a8c6d5b18badb0d9686c8fb33f">ArLaser</a> (int laserNumber, const char *name, unsigned int absoluteMaxRange, bool locationDependent=false, bool appendLaserNumberToName=true)</td></tr>
<tr class="memdesc:a272fb0a8c6d5b18badb0d9686c8fb33f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
<tr class="separator:a272fb0a8c6d5b18badb0d9686c8fb33f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d77d190752ff32a3fd0151309824f50"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1d77d190752ff32a3fd0151309824f50"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a1d77d190752ff32a3fd0151309824f50">asyncConnect</a> (void)=0</td></tr>
<tr class="memdesc:a1d77d190752ff32a3fd0151309824f50"><td class="mdescLeft">&#160;</td><td class="mdescRight">Connect to the laser without blocking. <br /></td></tr>
<tr class="separator:a1d77d190752ff32a3fd0151309824f50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a643235ae62fe3dc0cc29579e9a6a08fe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a643235ae62fe3dc0cc29579e9a6a08fe"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a643235ae62fe3dc0cc29579e9a6a08fe">blockingConnect</a> (void)=0</td></tr>
<tr class="memdesc:a643235ae62fe3dc0cc29579e9a6a08fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Connect to the laser and block for the result. <br /></td></tr>
<tr class="separator:a643235ae62fe3dc0cc29579e9a6a08fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3203371c8db7c2201c25869ec9ebff6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ad3203371c8db7c2201c25869ec9ebff6">canChooseAutoBaud</a> (void)</td></tr>
<tr class="memdesc:ad3203371c8db7c2201c25869ec9ebff6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if you can choose autoBaud for the laser.  <a href="#ad3203371c8db7c2201c25869ec9ebff6">More...</a><br /></td></tr>
<tr class="separator:ad3203371c8db7c2201c25869ec9ebff6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33798560368e114da29e93592c35dd3e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a33798560368e114da29e93592c35dd3e">canChooseDegrees</a> (void)</td></tr>
<tr class="memdesc:a33798560368e114da29e93592c35dd3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if you can choose the number of degrees.  <a href="#a33798560368e114da29e93592c35dd3e">More...</a><br /></td></tr>
<tr class="separator:a33798560368e114da29e93592c35dd3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf0c7f4e8800ab0dd13e01f0271ac175"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#aaf0c7f4e8800ab0dd13e01f0271ac175">canChooseIncrement</a> (void)</td></tr>
<tr class="memdesc:aaf0c7f4e8800ab0dd13e01f0271ac175"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if you can choose an increment.  <a href="#aaf0c7f4e8800ab0dd13e01f0271ac175">More...</a><br /></td></tr>
<tr class="separator:aaf0c7f4e8800ab0dd13e01f0271ac175"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb48934d321c2524d6073ec30174d99d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#afb48934d321c2524d6073ec30174d99d">canChooseReflectorBits</a> (void)</td></tr>
<tr class="memdesc:afb48934d321c2524d6073ec30174d99d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if you can choose reflectorBits for the laser.  <a href="#afb48934d321c2524d6073ec30174d99d">More...</a><br /></td></tr>
<tr class="separator:afb48934d321c2524d6073ec30174d99d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8daf03f2a35612748b08fcbd0490dc17"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a8daf03f2a35612748b08fcbd0490dc17">canChooseStartingBaud</a> (void)</td></tr>
<tr class="memdesc:a8daf03f2a35612748b08fcbd0490dc17"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if you can choose startingBaud for the laser.  <a href="#a8daf03f2a35612748b08fcbd0490dc17">More...</a><br /></td></tr>
<tr class="separator:a8daf03f2a35612748b08fcbd0490dc17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a604b3c95054903ee5f56a2556a0bbc09"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a604b3c95054903ee5f56a2556a0bbc09">canChooseUnits</a> (void)</td></tr>
<tr class="memdesc:a604b3c95054903ee5f56a2556a0bbc09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if you can choose units for the laser.  <a href="#a604b3c95054903ee5f56a2556a0bbc09">More...</a><br /></td></tr>
<tr class="separator:a604b3c95054903ee5f56a2556a0bbc09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7a13b0128851a044e80efcf823ceada"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ab7a13b0128851a044e80efcf823ceada">canSetDegrees</a> (void)</td></tr>
<tr class="memdesc:ab7a13b0128851a044e80efcf823ceada"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates whether it is possible to set the specific start and stop angles of sensing (field of view)  <a href="#ab7a13b0128851a044e80efcf823ceada">More...</a><br /></td></tr>
<tr class="separator:ab7a13b0128851a044e80efcf823ceada"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a316b3af24695e884c8eb8d2be0424384"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a316b3af24695e884c8eb8d2be0424384">canSetIncrement</a> (void)</td></tr>
<tr class="memdesc:a316b3af24695e884c8eb8d2be0424384"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if you can set an increment.  <a href="#a316b3af24695e884c8eb8d2be0424384">More...</a><br /></td></tr>
<tr class="separator:a316b3af24695e884c8eb8d2be0424384"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa3f9f0ea86470726d35160babce8d4c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#aaa3f9f0ea86470726d35160babce8d4c">canSetPowerControlled</a> (void)</td></tr>
<tr class="memdesc:aaa3f9f0ea86470726d35160babce8d4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if you can set powerControlled for the laser.  <a href="#aaa3f9f0ea86470726d35160babce8d4c">More...</a><br /></td></tr>
<tr class="separator:aaa3f9f0ea86470726d35160babce8d4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84af619b88c7e66e7ef51e24d6c53825"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a84af619b88c7e66e7ef51e24d6c53825">chooseAutoBaud</a> (const char *reflectorBits)</td></tr>
<tr class="memdesc:a84af619b88c7e66e7ef51e24d6c53825"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the reflectorBits to one of the choices from getAutoBaudChoices.  <a href="#a84af619b88c7e66e7ef51e24d6c53825">More...</a><br /></td></tr>
<tr class="separator:a84af619b88c7e66e7ef51e24d6c53825"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88431406706e2f47cf3ad1682e491f51"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a88431406706e2f47cf3ad1682e491f51">chooseDegrees</a> (const char *range)</td></tr>
<tr class="memdesc:a88431406706e2f47cf3ad1682e491f51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the range to one of the choices from getDegreesChoices.  <a href="#a88431406706e2f47cf3ad1682e491f51">More...</a><br /></td></tr>
<tr class="separator:a88431406706e2f47cf3ad1682e491f51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc169aa8cba88a208d7891901b7767ab"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#adc169aa8cba88a208d7891901b7767ab">chooseIncrement</a> (const char *increment)</td></tr>
<tr class="memdesc:adc169aa8cba88a208d7891901b7767ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the increment to one of the choices from getIncrementChoices.  <a href="#adc169aa8cba88a208d7891901b7767ab">More...</a><br /></td></tr>
<tr class="separator:adc169aa8cba88a208d7891901b7767ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b5990d093ca61121e59d24c45d8e9d9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a3b5990d093ca61121e59d24c45d8e9d9">chooseReflectorBits</a> (const char *reflectorBits)</td></tr>
<tr class="memdesc:a3b5990d093ca61121e59d24c45d8e9d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the reflectorBits to one of the choices from getReflectorBitsChoices.  <a href="#a3b5990d093ca61121e59d24c45d8e9d9">More...</a><br /></td></tr>
<tr class="separator:a3b5990d093ca61121e59d24c45d8e9d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92d47e68332396f96ce150c389bc630f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a92d47e68332396f96ce150c389bc630f">chooseStartingBaud</a> (const char *reflectorBits)</td></tr>
<tr class="memdesc:a92d47e68332396f96ce150c389bc630f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the reflectorBits to one of the choices from getStartingBaudChoices.  <a href="#a92d47e68332396f96ce150c389bc630f">More...</a><br /></td></tr>
<tr class="separator:a92d47e68332396f96ce150c389bc630f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ff1c78be3c183831042c48a937a1a15"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a8ff1c78be3c183831042c48a937a1a15">chooseUnits</a> (const char *units)</td></tr>
<tr class="memdesc:a8ff1c78be3c183831042c48a937a1a15"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the units to one of the choices from getUnitsChoices.  <a href="#a8ff1c78be3c183831042c48a937a1a15">More...</a><br /></td></tr>
<tr class="separator:a8ff1c78be3c183831042c48a937a1a15"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20dafafda3fe25af5a21eaf7f1432490"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a20dafafda3fe25af5a21eaf7f1432490"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a20dafafda3fe25af5a21eaf7f1432490">clearIgnoreReadings</a> (void)</td></tr>
<tr class="memdesc:a20dafafda3fe25af5a21eaf7f1432490"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears the degrees we ignore readings at. <br /></td></tr>
<tr class="separator:a20dafafda3fe25af5a21eaf7f1432490"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a542be29ead46088e92c120a0c17f55e1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a542be29ead46088e92c120a0c17f55e1"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a542be29ead46088e92c120a0c17f55e1">copyReadingCount</a> (const <a class="el" href="classArLaser.html">ArLaser</a> *laser)</td></tr>
<tr class="memdesc:a542be29ead46088e92c120a0c17f55e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copies the reading count stuff from another laser (for the laser filter) <br /></td></tr>
<tr class="separator:a542be29ead46088e92c120a0c17f55e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e10f224560d0745cb916b143190e018"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9e10f224560d0745cb916b143190e018"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a9e10f224560d0745cb916b143190e018">disconnect</a> (void)=0</td></tr>
<tr class="memdesc:a9e10f224560d0745cb916b143190e018"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disconnect from the laser. <br /></td></tr>
<tr class="separator:a9e10f224560d0745cb916b143190e018"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07be6f7f8367eb9e89b6cbfb108f1184"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a07be6f7f8367eb9e89b6cbfb108f1184"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a07be6f7f8367eb9e89b6cbfb108f1184">getAbsoluteMaxRange</a> (void)</td></tr>
<tr class="memdesc:a07be6f7f8367eb9e89b6cbfb108f1184"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the absolute maximum range on the sensor. <br /></td></tr>
<tr class="separator:a07be6f7f8367eb9e89b6cbfb108f1184"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4fc5f2f84499590f8a18455d7f0ae1d"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#aa4fc5f2f84499590f8a18455d7f0ae1d">getAutoBaudChoice</a> (void)</td></tr>
<tr class="memdesc:aa4fc5f2f84499590f8a18455d7f0ae1d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the reflectorBits that was chosen.  <a href="#aa4fc5f2f84499590f8a18455d7f0ae1d">More...</a><br /></td></tr>
<tr class="separator:aa4fc5f2f84499590f8a18455d7f0ae1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12ff86d24282a93bb577dbae8bd6e078"><td class="memItemLeft" align="right" valign="top">std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a12ff86d24282a93bb577dbae8bd6e078">getAutoBaudChoices</a> (void)</td></tr>
<tr class="memdesc:a12ff86d24282a93bb577dbae8bd6e078"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the list of reflectorBits choices.  <a href="#a12ff86d24282a93bb577dbae8bd6e078">More...</a><br /></td></tr>
<tr class="separator:a12ff86d24282a93bb577dbae8bd6e078"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ed3ef59239dc9c6caf899cf5b0ae5cf"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a0ed3ef59239dc9c6caf899cf5b0ae5cf">getAutoBaudChoicesString</a> (void)</td></tr>
<tr class="memdesc:a0ed3ef59239dc9c6caf899cf5b0ae5cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a string with the list of reflectorBits choices seperated by |s.  <a href="#a0ed3ef59239dc9c6caf899cf5b0ae5cf">More...</a><br /></td></tr>
<tr class="separator:a0ed3ef59239dc9c6caf899cf5b0ae5cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addae0e31dd4764aee774fa814b4e8744"><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#addae0e31dd4764aee774fa814b4e8744">getConnectionTimeoutSeconds</a> (void)</td></tr>
<tr class="memdesc:addae0e31dd4764aee774fa814b4e8744"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the number of seconds without a response until connection assumed lost.  <a href="#addae0e31dd4764aee774fa814b4e8744">More...</a><br /></td></tr>
<tr class="separator:addae0e31dd4764aee774fa814b4e8744"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a81e99b11096dedd74c91c68e63b2ef70"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a81e99b11096dedd74c91c68e63b2ef70"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a81e99b11096dedd74c91c68e63b2ef70">getCumulativeCleanDist</a> (void)</td></tr>
<tr class="memdesc:a81e99b11096dedd74c91c68e63b2ef70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cumulative readings that are this close to current beams are discarded. <br /></td></tr>
<tr class="separator:a81e99b11096dedd74c91c68e63b2ef70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0564ec4374f9a0221e875c1aa6286bd0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0564ec4374f9a0221e875c1aa6286bd0"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a0564ec4374f9a0221e875c1aa6286bd0">getCumulativeCleanInterval</a> (void)</td></tr>
<tr class="memdesc:a0564ec4374f9a0221e875c1aa6286bd0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cumulative readings are cleaned every this number of milliseconds. <br /></td></tr>
<tr class="separator:a0564ec4374f9a0221e875c1aa6286bd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39ea4d8a80cc4085c3ec008282fd7f85"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a39ea4d8a80cc4085c3ec008282fd7f85"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a39ea4d8a80cc4085c3ec008282fd7f85">getCumulativeCleanOffset</a> (void)</td></tr>
<tr class="memdesc:a39ea4d8a80cc4085c3ec008282fd7f85"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the offset for cumulative cleaning. <br /></td></tr>
<tr class="separator:a39ea4d8a80cc4085c3ec008282fd7f85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03595bbe2d74213c9a03e194e38e38e7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a03595bbe2d74213c9a03e194e38e38e7"></a>
const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a03595bbe2d74213c9a03e194e38e38e7">getDefaultPortType</a> (void)</td></tr>
<tr class="memdesc:a03595bbe2d74213c9a03e194e38e38e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the default port type for the laser. <br /></td></tr>
<tr class="separator:a03595bbe2d74213c9a03e194e38e38e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48323ebe99a62d959dd4cca153e6b933"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a48323ebe99a62d959dd4cca153e6b933"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a48323ebe99a62d959dd4cca153e6b933">getDefaultTcpPort</a> (void)</td></tr>
<tr class="memdesc:a48323ebe99a62d959dd4cca153e6b933"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the default TCP port for the laser. <br /></td></tr>
<tr class="separator:a48323ebe99a62d959dd4cca153e6b933"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d119529c9b0386408ef8b4896f673ce"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a0d119529c9b0386408ef8b4896f673ce">getDegreesChoice</a> (void)</td></tr>
<tr class="memdesc:a0d119529c9b0386408ef8b4896f673ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the range that was chosen.  <a href="#a0d119529c9b0386408ef8b4896f673ce">More...</a><br /></td></tr>
<tr class="separator:a0d119529c9b0386408ef8b4896f673ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58444fa6402069c900f72ff806c58754"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a58444fa6402069c900f72ff806c58754">getDegreesChoiceDouble</a> (void)</td></tr>
<tr class="memdesc:a58444fa6402069c900f72ff806c58754"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the range that was chosen as a double.  <a href="#a58444fa6402069c900f72ff806c58754">More...</a><br /></td></tr>
<tr class="separator:a58444fa6402069c900f72ff806c58754"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bcc3d57c8ca9aeba529455fb7a0669a"><td class="memItemLeft" align="right" valign="top">std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a5bcc3d57c8ca9aeba529455fb7a0669a">getDegreesChoices</a> (void)</td></tr>
<tr class="memdesc:a5bcc3d57c8ca9aeba529455fb7a0669a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the list of range choices.  <a href="#a5bcc3d57c8ca9aeba529455fb7a0669a">More...</a><br /></td></tr>
<tr class="separator:a5bcc3d57c8ca9aeba529455fb7a0669a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8af368e3a42c63decf990f13a7559e01"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a8af368e3a42c63decf990f13a7559e01">getDegreesChoicesMap</a> (void)</td></tr>
<tr class="memdesc:a8af368e3a42c63decf990f13a7559e01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the map of degrees choices to what they mean.  <a href="#a8af368e3a42c63decf990f13a7559e01">More...</a><br /></td></tr>
<tr class="separator:a8af368e3a42c63decf990f13a7559e01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2dc9fa3f3662fbc7b1bebbc2b7ad348"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ad2dc9fa3f3662fbc7b1bebbc2b7ad348">getDegreesChoicesString</a> (void)</td></tr>
<tr class="memdesc:ad2dc9fa3f3662fbc7b1bebbc2b7ad348"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a string with the list of degrees choices seperated by |s.  <a href="#ad2dc9fa3f3662fbc7b1bebbc2b7ad348">More...</a><br /></td></tr>
<tr class="separator:ad2dc9fa3f3662fbc7b1bebbc2b7ad348"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53d6fef544cdbe633a6498ba5c90b449"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a53d6fef544cdbe633a6498ba5c90b449"></a>
virtual <a class="el" href="classArDeviceConnection.html">ArDeviceConnection</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a53d6fef544cdbe633a6498ba5c90b449">getDeviceConnection</a> (void)</td></tr>
<tr class="memdesc:a53d6fef544cdbe633a6498ba5c90b449"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the device connection. <br /></td></tr>
<tr class="separator:a53d6fef544cdbe633a6498ba5c90b449"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6aa3c7373dc933b8f32bb36c23cd088"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#aa6aa3c7373dc933b8f32bb36c23cd088">getEndDegrees</a> (void)</td></tr>
<tr class="memdesc:aa6aa3c7373dc933b8f32bb36c23cd088"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the end angle.  <a href="#aa6aa3c7373dc933b8f32bb36c23cd088">More...</a><br /></td></tr>
<tr class="separator:aa6aa3c7373dc933b8f32bb36c23cd088"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac00ecd47eb2dccf89f1ea47a1c878b15"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ac00ecd47eb2dccf89f1ea47a1c878b15">getEndDegreesMax</a> (void)</td></tr>
<tr class="memdesc:ac00ecd47eb2dccf89f1ea47a1c878b15"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the maximum value for the end angle.  <a href="#ac00ecd47eb2dccf89f1ea47a1c878b15">More...</a><br /></td></tr>
<tr class="separator:ac00ecd47eb2dccf89f1ea47a1c878b15"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a9ce63b69d7798e7c2f62c1cd870380"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a1a9ce63b69d7798e7c2f62c1cd870380">getEndDegreesMin</a> (void)</td></tr>
<tr class="memdesc:a1a9ce63b69d7798e7c2f62c1cd870380"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the minimum value for the end angle.  <a href="#a1a9ce63b69d7798e7c2f62c1cd870380">More...</a><br /></td></tr>
<tr class="separator:a1a9ce63b69d7798e7c2f62c1cd870380"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb9239d5eaa56d116b267600e121d548"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acb9239d5eaa56d116b267600e121d548"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#acb9239d5eaa56d116b267600e121d548">getFlipped</a> (void)</td></tr>
<tr class="memdesc:acb9239d5eaa56d116b267600e121d548"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if the laser is flipped or not. <br /></td></tr>
<tr class="separator:acb9239d5eaa56d116b267600e121d548"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62955723e09d5d65c118f54e879aea8a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a62955723e09d5d65c118f54e879aea8a"></a>
const std::set&lt; int &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a62955723e09d5d65c118f54e879aea8a">getIgnoreReadings</a> (void) const </td></tr>
<tr class="memdesc:a62955723e09d5d65c118f54e879aea8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the list of readings that we ignore. <br /></td></tr>
<tr class="separator:a62955723e09d5d65c118f54e879aea8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9b90b830817e39a94a0691da33d70b9"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ac9b90b830817e39a94a0691da33d70b9">getIncrement</a> (void)</td></tr>
<tr class="memdesc:ac9b90b830817e39a94a0691da33d70b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the increment.  <a href="#ac9b90b830817e39a94a0691da33d70b9">More...</a><br /></td></tr>
<tr class="separator:ac9b90b830817e39a94a0691da33d70b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90c1a696bcccfc23f3fda49888f0f479"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a90c1a696bcccfc23f3fda49888f0f479">getIncrementChoice</a> (void)</td></tr>
<tr class="memdesc:a90c1a696bcccfc23f3fda49888f0f479"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the increment that was chosen.  <a href="#a90c1a696bcccfc23f3fda49888f0f479">More...</a><br /></td></tr>
<tr class="separator:a90c1a696bcccfc23f3fda49888f0f479"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a939d173dd053f68caaa02699e96d186d"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a939d173dd053f68caaa02699e96d186d">getIncrementChoiceDouble</a> (void)</td></tr>
<tr class="memdesc:a939d173dd053f68caaa02699e96d186d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the increment that was chosen as a double.  <a href="#a939d173dd053f68caaa02699e96d186d">More...</a><br /></td></tr>
<tr class="separator:a939d173dd053f68caaa02699e96d186d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65541e8c15b8374cacd9ed73dd9bca65"><td class="memItemLeft" align="right" valign="top">std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a65541e8c15b8374cacd9ed73dd9bca65">getIncrementChoices</a> (void)</td></tr>
<tr class="memdesc:a65541e8c15b8374cacd9ed73dd9bca65"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the list of increment choices.  <a href="#a65541e8c15b8374cacd9ed73dd9bca65">More...</a><br /></td></tr>
<tr class="separator:a65541e8c15b8374cacd9ed73dd9bca65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a175b97d970d2ca190bb45fec3dfd5f"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a0a175b97d970d2ca190bb45fec3dfd5f">getIncrementChoicesMap</a> (void)</td></tr>
<tr class="memdesc:a0a175b97d970d2ca190bb45fec3dfd5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the map of increment choices to what they mean.  <a href="#a0a175b97d970d2ca190bb45fec3dfd5f">More...</a><br /></td></tr>
<tr class="separator:a0a175b97d970d2ca190bb45fec3dfd5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e187c6c0415e7cadbe3383843f579df"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a2e187c6c0415e7cadbe3383843f579df">getIncrementChoicesString</a> (void)</td></tr>
<tr class="memdesc:a2e187c6c0415e7cadbe3383843f579df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a string with the list of increment choices seperated by |s.  <a href="#a2e187c6c0415e7cadbe3383843f579df">More...</a><br /></td></tr>
<tr class="separator:a2e187c6c0415e7cadbe3383843f579df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb5a72dde96c3e661e1a723cf75874df"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#abb5a72dde96c3e661e1a723cf75874df">getIncrementMax</a> (void)</td></tr>
<tr class="memdesc:abb5a72dde96c3e661e1a723cf75874df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the increment maximum.  <a href="#abb5a72dde96c3e661e1a723cf75874df">More...</a><br /></td></tr>
<tr class="separator:abb5a72dde96c3e661e1a723cf75874df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09f467aeb4459d68e2a0f8d0a5a0be05"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a09f467aeb4459d68e2a0f8d0a5a0be05">getIncrementMin</a> (void)</td></tr>
<tr class="memdesc:a09f467aeb4459d68e2a0f8d0a5a0be05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the increment minimum.  <a href="#a09f467aeb4459d68e2a0f8d0a5a0be05">More...</a><br /></td></tr>
<tr class="separator:a09f467aeb4459d68e2a0f8d0a5a0be05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6db25147d3f81df498d6d290ca1c5dc6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6db25147d3f81df498d6d290ca1c5dc6"></a>
<a class="el" href="classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3">ArLog::LogLevel</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a6db25147d3f81df498d6d290ca1c5dc6">getInfoLogLevel</a> (void)</td></tr>
<tr class="memdesc:a6db25147d3f81df498d6d290ca1c5dc6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the log level that informational things are logged at. <br /></td></tr>
<tr class="separator:a6db25147d3f81df498d6d290ca1c5dc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37f609561593f0bd5d36140390d8e553"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a37f609561593f0bd5d36140390d8e553"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a37f609561593f0bd5d36140390d8e553">getLaserNumber</a> (void)</td></tr>
<tr class="memdesc:a37f609561593f0bd5d36140390d8e553"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the number of the laser this is. <br /></td></tr>
<tr class="separator:a37f609561593f0bd5d36140390d8e553"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa1394ce2d727ad2069756d29e37a63b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa1394ce2d727ad2069756d29e37a63b"></a>
<a class="el" href="classArTime.html">ArTime</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#afa1394ce2d727ad2069756d29e37a63b">getLastReadingTime</a> (void)</td></tr>
<tr class="memdesc:afa1394ce2d727ad2069756d29e37a63b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the time data was last receieved. <br /></td></tr>
<tr class="separator:afa1394ce2d727ad2069756d29e37a63b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4001602faa2ab966fe3cfc1c2e57d1c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ab4001602faa2ab966fe3cfc1c2e57d1c">getPowerControlled</a> (void)</td></tr>
<tr class="memdesc:ab4001602faa2ab966fe3cfc1c2e57d1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if the power is controlled.  <a href="#ab4001602faa2ab966fe3cfc1c2e57d1c">More...</a><br /></td></tr>
<tr class="separator:ab4001602faa2ab966fe3cfc1c2e57d1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a226d3180b8f2f6fd72a9bc5404f8da59"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a226d3180b8f2f6fd72a9bc5404f8da59"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a226d3180b8f2f6fd72a9bc5404f8da59">getReadingCount</a> (void)</td></tr>
<tr class="memdesc:a226d3180b8f2f6fd72a9bc5404f8da59"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the number of laser readings received in the last second. <br /></td></tr>
<tr class="separator:a226d3180b8f2f6fd72a9bc5404f8da59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3f5fa6447d883ac0e8b19858a26dff3"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ad3f5fa6447d883ac0e8b19858a26dff3">getReflectorBitsChoice</a> (void)</td></tr>
<tr class="memdesc:ad3f5fa6447d883ac0e8b19858a26dff3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the reflectorBits that was chosen.  <a href="#ad3f5fa6447d883ac0e8b19858a26dff3">More...</a><br /></td></tr>
<tr class="separator:ad3f5fa6447d883ac0e8b19858a26dff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8feed6899f9f1597262e1733125a9c25"><td class="memItemLeft" align="right" valign="top">std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a8feed6899f9f1597262e1733125a9c25">getReflectorBitsChoices</a> (void)</td></tr>
<tr class="memdesc:a8feed6899f9f1597262e1733125a9c25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the list of reflectorBits choices.  <a href="#a8feed6899f9f1597262e1733125a9c25">More...</a><br /></td></tr>
<tr class="separator:a8feed6899f9f1597262e1733125a9c25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4679592efef5644276b72fb26e06176b"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a4679592efef5644276b72fb26e06176b">getReflectorBitsChoicesString</a> (void)</td></tr>
<tr class="memdesc:a4679592efef5644276b72fb26e06176b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a string with the list of reflectorBits choices seperated by |s.  <a href="#a4679592efef5644276b72fb26e06176b">More...</a><br /></td></tr>
<tr class="separator:a4679592efef5644276b72fb26e06176b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af51797f736a29a26cf40d20e1c16c8fc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af51797f736a29a26cf40d20e1c16c8fc"></a>
<a class="el" href="classArPose.html">ArPose</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#af51797f736a29a26cf40d20e1c16c8fc">getSensorPosition</a> (void)</td></tr>
<tr class="memdesc:af51797f736a29a26cf40d20e1c16c8fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the position of the sensor on the robot. <br /></td></tr>
<tr class="separator:af51797f736a29a26cf40d20e1c16c8fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1a77661d3bd47d67127cae97910cd64"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad1a77661d3bd47d67127cae97910cd64"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ad1a77661d3bd47d67127cae97910cd64">getSensorPositionTh</a> (void)</td></tr>
<tr class="memdesc:ad1a77661d3bd47d67127cae97910cd64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the heading of the sensor on the robot. <br /></td></tr>
<tr class="separator:ad1a77661d3bd47d67127cae97910cd64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bea2d26f64e45b4994bb63801a67025"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4bea2d26f64e45b4994bb63801a67025"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a4bea2d26f64e45b4994bb63801a67025">getSensorPositionX</a> (void)</td></tr>
<tr class="memdesc:a4bea2d26f64e45b4994bb63801a67025"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the X position of the sensor on the robot. <br /></td></tr>
<tr class="separator:a4bea2d26f64e45b4994bb63801a67025"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0933894e0176d93dc5e1a8b08d04a7bb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0933894e0176d93dc5e1a8b08d04a7bb"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a0933894e0176d93dc5e1a8b08d04a7bb">getSensorPositionY</a> (void)</td></tr>
<tr class="memdesc:a0933894e0176d93dc5e1a8b08d04a7bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the Y position of the sensor on the robot. <br /></td></tr>
<tr class="separator:a0933894e0176d93dc5e1a8b08d04a7bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9176691c9eb4101330efd7d57b19e5e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9176691c9eb4101330efd7d57b19e5e5"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a9176691c9eb4101330efd7d57b19e5e5">getSensorPositionZ</a> (void)</td></tr>
<tr class="memdesc:a9176691c9eb4101330efd7d57b19e5e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the Z position of the sensor on the robot (0 is unknown) <br /></td></tr>
<tr class="separator:a9176691c9eb4101330efd7d57b19e5e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac589039384c421703756eac2861899bf"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ac589039384c421703756eac2861899bf">getStartDegrees</a> (void)</td></tr>
<tr class="memdesc:ac589039384c421703756eac2861899bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the start angle.  <a href="#ac589039384c421703756eac2861899bf">More...</a><br /></td></tr>
<tr class="separator:ac589039384c421703756eac2861899bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61b235df31beb691b6cc909744396a13"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a61b235df31beb691b6cc909744396a13">getStartDegreesMax</a> (void)</td></tr>
<tr class="memdesc:a61b235df31beb691b6cc909744396a13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the maximum value for the start angle.  <a href="#a61b235df31beb691b6cc909744396a13">More...</a><br /></td></tr>
<tr class="separator:a61b235df31beb691b6cc909744396a13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60cb27a1ac5493d8b10be50e83ec6bb6"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a60cb27a1ac5493d8b10be50e83ec6bb6">getStartDegreesMin</a> (void)</td></tr>
<tr class="memdesc:a60cb27a1ac5493d8b10be50e83ec6bb6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the minimum value for the start angle.  <a href="#a60cb27a1ac5493d8b10be50e83ec6bb6">More...</a><br /></td></tr>
<tr class="separator:a60cb27a1ac5493d8b10be50e83ec6bb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1c7541a0cbde32469aa5c1dbe00aed8"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ae1c7541a0cbde32469aa5c1dbe00aed8">getStartingBaudChoice</a> (void)</td></tr>
<tr class="memdesc:ae1c7541a0cbde32469aa5c1dbe00aed8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the reflectorBits that was chosen.  <a href="#ae1c7541a0cbde32469aa5c1dbe00aed8">More...</a><br /></td></tr>
<tr class="separator:ae1c7541a0cbde32469aa5c1dbe00aed8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72e5aa6e6e796098622591b2f2bea4aa"><td class="memItemLeft" align="right" valign="top">std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a72e5aa6e6e796098622591b2f2bea4aa">getStartingBaudChoices</a> (void)</td></tr>
<tr class="memdesc:a72e5aa6e6e796098622591b2f2bea4aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the list of reflectorBits choices.  <a href="#a72e5aa6e6e796098622591b2f2bea4aa">More...</a><br /></td></tr>
<tr class="separator:a72e5aa6e6e796098622591b2f2bea4aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f5fc88d55dcd2034131536881a367ac"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a7f5fc88d55dcd2034131536881a367ac">getStartingBaudChoicesString</a> (void)</td></tr>
<tr class="memdesc:a7f5fc88d55dcd2034131536881a367ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a string with the list of reflectorBits choices seperated by |s.  <a href="#a7f5fc88d55dcd2034131536881a367ac">More...</a><br /></td></tr>
<tr class="separator:a7f5fc88d55dcd2034131536881a367ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3965654085eaefbb214847054d410f58"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a3965654085eaefbb214847054d410f58">getUnitsChoice</a> (void)</td></tr>
<tr class="memdesc:a3965654085eaefbb214847054d410f58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the units that was chosen.  <a href="#a3965654085eaefbb214847054d410f58">More...</a><br /></td></tr>
<tr class="separator:a3965654085eaefbb214847054d410f58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a829d6f5a5b3fa2eece4f168238d73d53"><td class="memItemLeft" align="right" valign="top">std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a829d6f5a5b3fa2eece4f168238d73d53">getUnitsChoices</a> (void)</td></tr>
<tr class="memdesc:a829d6f5a5b3fa2eece4f168238d73d53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the list of units choices.  <a href="#a829d6f5a5b3fa2eece4f168238d73d53">More...</a><br /></td></tr>
<tr class="separator:a829d6f5a5b3fa2eece4f168238d73d53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0892dc899184a732256cb51301bc1d69"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a0892dc899184a732256cb51301bc1d69">getUnitsChoicesString</a> (void)</td></tr>
<tr class="memdesc:a0892dc899184a732256cb51301bc1d69"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a string with the list of units choices seperated by |s.  <a href="#a0892dc899184a732256cb51301bc1d69">More...</a><br /></td></tr>
<tr class="separator:a0892dc899184a732256cb51301bc1d69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9913214fae54ea9b344e3f338c4f36f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9913214fae54ea9b344e3f338c4f36f"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#af9913214fae54ea9b344e3f338c4f36f">hasSensorPosition</a> (void)</td></tr>
<tr class="memdesc:af9913214fae54ea9b344e3f338c4f36f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if the sensor pose has been set. <br /></td></tr>
<tr class="separator:af9913214fae54ea9b344e3f338c4f36f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae5c36df5b59ad861debb895e255479b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae5c36df5b59ad861debb895e255479b"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#aae5c36df5b59ad861debb895e255479b">isConnected</a> (void)=0</td></tr>
<tr class="memdesc:aae5c36df5b59ad861debb895e255479b"><td class="mdescLeft">&#160;</td><td class="mdescRight">See if the laser is connected. <br /></td></tr>
<tr class="separator:aae5c36df5b59ad861debb895e255479b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf598bffa72bc368b13ec749d045a18d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abf598bffa72bc368b13ec749d045a18d"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#abf598bffa72bc368b13ec749d045a18d">isTryingToConnect</a> (void)=0</td></tr>
<tr class="memdesc:abf598bffa72bc368b13ec749d045a18d"><td class="mdescLeft">&#160;</td><td class="mdescRight">See if the laser is trying to connect. <br /></td></tr>
<tr class="separator:abf598bffa72bc368b13ec749d045a18d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad47916d80345c7077e07e69d644768d2"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ad47916d80345c7077e07e69d644768d2">laserCheckParams</a> (void)</td></tr>
<tr class="memdesc:ad47916d80345c7077e07e69d644768d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Call the laser can implement to make sure the parameters are all okay or set the maximum range (based on the params)  <a href="#ad47916d80345c7077e07e69d644768d2">More...</a><br /></td></tr>
<tr class="separator:ad47916d80345c7077e07e69d644768d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0cda25728bba5b072bf04843f347d6bb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0cda25728bba5b072bf04843f347d6bb"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a0cda25728bba5b072bf04843f347d6bb">remConnectCB</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor)</td></tr>
<tr class="memdesc:a0cda25728bba5b072bf04843f347d6bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a disconnect callback. <br /></td></tr>
<tr class="separator:a0cda25728bba5b072bf04843f347d6bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08785abb26de89508cf3d6fcc04202d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a08785abb26de89508cf3d6fcc04202d8"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a08785abb26de89508cf3d6fcc04202d8">remDisconnectNormallyCB</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor)</td></tr>
<tr class="memdesc:a08785abb26de89508cf3d6fcc04202d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a callback for when disconnect is called while connected. <br /></td></tr>
<tr class="separator:a08785abb26de89508cf3d6fcc04202d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3bc5046f91115386a4581e66dbfe088"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af3bc5046f91115386a4581e66dbfe088"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#af3bc5046f91115386a4581e66dbfe088">remDisconnectOnErrorCB</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor)</td></tr>
<tr class="memdesc:af3bc5046f91115386a4581e66dbfe088"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a callback for when disconnection happens because of an error. <br /></td></tr>
<tr class="separator:af3bc5046f91115386a4581e66dbfe088"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9bbdf1e01d6ce33fe8e5a5fce4ad29c0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9bbdf1e01d6ce33fe8e5a5fce4ad29c0"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a9bbdf1e01d6ce33fe8e5a5fce4ad29c0">remFailedConnectCB</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor)</td></tr>
<tr class="memdesc:a9bbdf1e01d6ce33fe8e5a5fce4ad29c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a callback for when a connection to the robot is failed. <br /></td></tr>
<tr class="separator:a9bbdf1e01d6ce33fe8e5a5fce4ad29c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d650c453962e57a17785cc984d9910b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0d650c453962e57a17785cc984d9910b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a0d650c453962e57a17785cc984d9910b">remReadingCB</a> (<a class="el" href="classArFunctor.html">ArFunctor</a> *functor)</td></tr>
<tr class="memdesc:a0d650c453962e57a17785cc984d9910b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a callback that is called whenever a laser reading is processed. <br /></td></tr>
<tr class="separator:a0d650c453962e57a17785cc984d9910b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af204708d76dce6fa024d5f2c37561143"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af204708d76dce6fa024d5f2c37561143"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#af204708d76dce6fa024d5f2c37561143">resetLastCumulativeCleanTime</a> (void)</td></tr>
<tr class="memdesc:af204708d76dce6fa024d5f2c37561143"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets when the cumulative cleaning happened (so offset can help) <br /></td></tr>
<tr class="separator:af204708d76dce6fa024d5f2c37561143"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54b701ba0d1e820041c58cd6c552af7a"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a54b701ba0d1e820041c58cd6c552af7a">setConnectionTimeoutSeconds</a> (double seconds)</td></tr>
<tr class="memdesc:a54b701ba0d1e820041c58cd6c552af7a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the numter of seconds without a response until connection assumed lost.  <a href="#a54b701ba0d1e820041c58cd6c552af7a">More...</a><br /></td></tr>
<tr class="separator:a54b701ba0d1e820041c58cd6c552af7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a7f8511f5798fe69367435254871d05"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5a7f8511f5798fe69367435254871d05"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a5a7f8511f5798fe69367435254871d05">setCumulativeBufferSize</a> (size_t size)</td></tr>
<tr class="memdesc:a5a7f8511f5798fe69367435254871d05"><td class="mdescLeft">&#160;</td><td class="mdescRight">override the default to keep track of its been set or not <br /></td></tr>
<tr class="separator:a5a7f8511f5798fe69367435254871d05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b9c711faf0caae6437b3595e4f68584"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b9c711faf0caae6437b3595e4f68584"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a2b9c711faf0caae6437b3595e4f68584">setCumulativeCleanDist</a> (double dist)</td></tr>
<tr class="memdesc:a2b9c711faf0caae6437b3595e4f68584"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cumulative readings that are this close to current beams are discarded. <br /></td></tr>
<tr class="separator:a2b9c711faf0caae6437b3595e4f68584"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1e2373f5e314249aab538f44a775793"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad1e2373f5e314249aab538f44a775793"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ad1e2373f5e314249aab538f44a775793">setCumulativeCleanInterval</a> (int milliSeconds)</td></tr>
<tr class="memdesc:ad1e2373f5e314249aab538f44a775793"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cumulative readings are cleaned every this number of milliseconds. <br /></td></tr>
<tr class="separator:ad1e2373f5e314249aab538f44a775793"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f1cd89a192537d0b7ecb57587d346dc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f1cd89a192537d0b7ecb57587d346dc"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a8f1cd89a192537d0b7ecb57587d346dc">setCumulativeCleanOffset</a> (int milliSeconds)</td></tr>
<tr class="memdesc:a8f1cd89a192537d0b7ecb57587d346dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Offset for cumulative cleaning. <br /></td></tr>
<tr class="separator:a8f1cd89a192537d0b7ecb57587d346dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace8f8cee0b620afbee93718c8ff15725"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace8f8cee0b620afbee93718c8ff15725"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ace8f8cee0b620afbee93718c8ff15725">setDeviceConnection</a> (<a class="el" href="classArDeviceConnection.html">ArDeviceConnection</a> *conn)</td></tr>
<tr class="memdesc:ace8f8cee0b620afbee93718c8ff15725"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the device connection. <br /></td></tr>
<tr class="separator:ace8f8cee0b620afbee93718c8ff15725"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a591a6986cfe51d0eca076db375d5d8fa"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a591a6986cfe51d0eca076db375d5d8fa">setEndDegrees</a> (double endDegrees)</td></tr>
<tr class="memdesc:a591a6986cfe51d0eca076db375d5d8fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the end angle, it must be between getEndDegreesMin and getEndDegreesMax.  <a href="#a591a6986cfe51d0eca076db375d5d8fa">More...</a><br /></td></tr>
<tr class="separator:a591a6986cfe51d0eca076db375d5d8fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:affac2bcd738fc7263156ea98a4ed5c3f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="affac2bcd738fc7263156ea98a4ed5c3f"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#affac2bcd738fc7263156ea98a4ed5c3f">setFlipped</a> (bool flipped)</td></tr>
<tr class="memdesc:affac2bcd738fc7263156ea98a4ed5c3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets if the laser is flipped or not. <br /></td></tr>
<tr class="separator:affac2bcd738fc7263156ea98a4ed5c3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab64e257c65cae6a8c70eb585f820b490"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ab64e257c65cae6a8c70eb585f820b490">setIncrement</a> (double increment)</td></tr>
<tr class="memdesc:ab64e257c65cae6a8c70eb585f820b490"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the increment.  <a href="#ab64e257c65cae6a8c70eb585f820b490">More...</a><br /></td></tr>
<tr class="separator:ab64e257c65cae6a8c70eb585f820b490"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af50f54a7c18fdedd38a491cf03bb94d2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af50f54a7c18fdedd38a491cf03bb94d2"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#af50f54a7c18fdedd38a491cf03bb94d2">setInfoLogLevel</a> (<a class="el" href="classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3">ArLog::LogLevel</a> infoLogLevel)</td></tr>
<tr class="memdesc:af50f54a7c18fdedd38a491cf03bb94d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the log level that informational things are logged at. <br /></td></tr>
<tr class="separator:af50f54a7c18fdedd38a491cf03bb94d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dbfc2bfcb219fbe1e38ce25f0c5a95f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9dbfc2bfcb219fbe1e38ce25f0c5a95f"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a9dbfc2bfcb219fbe1e38ce25f0c5a95f">setMaxRange</a> (unsigned int maxRange)</td></tr>
<tr class="memdesc:a9dbfc2bfcb219fbe1e38ce25f0c5a95f"><td class="mdescLeft">&#160;</td><td class="mdescRight">override the default to bound the maxrange by the absolute max range <br /></td></tr>
<tr class="separator:a9dbfc2bfcb219fbe1e38ce25f0c5a95f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2cf1cb56e6c74a878d568553d2efbe0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ad2cf1cb56e6c74a878d568553d2efbe0">setPowerControlled</a> (bool powerControlled)</td></tr>
<tr class="memdesc:ad2cf1cb56e6c74a878d568553d2efbe0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets if the power is controlled.  <a href="#ad2cf1cb56e6c74a878d568553d2efbe0">More...</a><br /></td></tr>
<tr class="separator:ad2cf1cb56e6c74a878d568553d2efbe0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee150c3670f2467f0778bc0a372ae657"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aee150c3670f2467f0778bc0a372ae657"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#aee150c3670f2467f0778bc0a372ae657">setSensorPosition</a> (double x, double y, double th, double z=0)</td></tr>
<tr class="memdesc:aee150c3670f2467f0778bc0a372ae657"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the position of the sensor on the robot. <br /></td></tr>
<tr class="separator:aee150c3670f2467f0778bc0a372ae657"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af84acd1ab2aa0b667efbb98f265b0ab6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af84acd1ab2aa0b667efbb98f265b0ab6"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#af84acd1ab2aa0b667efbb98f265b0ab6">setSensorPosition</a> (<a class="el" href="classArPose.html">ArPose</a> pose, double z=0)</td></tr>
<tr class="memdesc:af84acd1ab2aa0b667efbb98f265b0ab6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the position of the sensor on the robot. <br /></td></tr>
<tr class="separator:af84acd1ab2aa0b667efbb98f265b0ab6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42e053c1cf6c6660cf1d66e1b643415e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a42e053c1cf6c6660cf1d66e1b643415e">setStartDegrees</a> (double startDegrees)</td></tr>
<tr class="memdesc:a42e053c1cf6c6660cf1d66e1b643415e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the start angle, it must be between getStartDegreesMin and getStartDegreesMax.  <a href="#a42e053c1cf6c6660cf1d66e1b643415e">More...</a><br /></td></tr>
<tr class="separator:a42e053c1cf6c6660cf1d66e1b643415e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a979366cbfdaa5b0634f2fa19235ae1cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a979366cbfdaa5b0634f2fa19235ae1cd"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a979366cbfdaa5b0634f2fa19235ae1cd">~ArLaser</a> ()</td></tr>
<tr class="memdesc:a979366cbfdaa5b0634f2fa19235ae1cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:a979366cbfdaa5b0634f2fa19235ae1cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classArRangeDeviceThreaded"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classArRangeDeviceThreaded')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classArRangeDeviceThreaded.html">ArRangeDeviceThreaded</a></td></tr>
<tr class="memitem:a4073e17466a8609a0929cd18fbe15a5f inherit pub_methods_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4073e17466a8609a0929cd18fbe15a5f"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDeviceThreaded.html#a4073e17466a8609a0929cd18fbe15a5f">ArRangeDeviceThreaded</a> (size_t currentBufferSize, size_t cumulativeBufferSize, const char *name, unsigned int maxRange, int maxSecondsTokeepCurrent=0, int maxSecondsToKeepCumulative=0, double maxDistToKeepCumulative=0, bool locationDependent=false)</td></tr>
<tr class="memdesc:a4073e17466a8609a0929cd18fbe15a5f inherit pub_methods_classArRangeDeviceThreaded"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
<tr class="separator:a4073e17466a8609a0929cd18fbe15a5f inherit pub_methods_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9a031e7475c4d315c1a2ffd779caffd inherit pub_methods_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad9a031e7475c4d315c1a2ffd779caffd"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDeviceThreaded.html#ad9a031e7475c4d315c1a2ffd779caffd">getRunning</a> (void)</td></tr>
<tr class="memdesc:ad9a031e7475c4d315c1a2ffd779caffd inherit pub_methods_classArRangeDeviceThreaded"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the running status of the thread. <br /></td></tr>
<tr class="separator:ad9a031e7475c4d315c1a2ffd779caffd inherit pub_methods_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cf632960210b7329e7f1eec30db2051 inherit pub_methods_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3cf632960210b7329e7f1eec30db2051"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDeviceThreaded.html#a3cf632960210b7329e7f1eec30db2051">getRunningWithLock</a> (void)</td></tr>
<tr class="memdesc:a3cf632960210b7329e7f1eec30db2051 inherit pub_methods_classArRangeDeviceThreaded"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the running status of the thread, locking around the variable. <br /></td></tr>
<tr class="separator:a3cf632960210b7329e7f1eec30db2051 inherit pub_methods_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40460f97ba63b21ea12f61368df8caa9 inherit pub_methods_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a40460f97ba63b21ea12f61368df8caa9"></a>
virtual int&#160;</td><td class="memItemRight" valign="bottom"><b>lockDevice</b> (void)</td></tr>
<tr class="separator:a40460f97ba63b21ea12f61368df8caa9 inherit pub_methods_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a320f6e8aa92a6fb68fe4258042895373 inherit pub_methods_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a320f6e8aa92a6fb68fe4258042895373"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDeviceThreaded.html#a320f6e8aa92a6fb68fe4258042895373">run</a> (void)</td></tr>
<tr class="memdesc:a320f6e8aa92a6fb68fe4258042895373 inherit pub_methods_classArRangeDeviceThreaded"><td class="mdescLeft">&#160;</td><td class="mdescRight">Run in this thread. <br /></td></tr>
<tr class="separator:a320f6e8aa92a6fb68fe4258042895373 inherit pub_methods_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62cb8f9af9c0152fe228ac59724c89c6 inherit pub_methods_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a62cb8f9af9c0152fe228ac59724c89c6"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDeviceThreaded.html#a62cb8f9af9c0152fe228ac59724c89c6">runAsync</a> (void)</td></tr>
<tr class="memdesc:a62cb8f9af9c0152fe228ac59724c89c6 inherit pub_methods_classArRangeDeviceThreaded"><td class="mdescLeft">&#160;</td><td class="mdescRight">Run in its own thread. <br /></td></tr>
<tr class="separator:a62cb8f9af9c0152fe228ac59724c89c6 inherit pub_methods_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63404f7a0e435f4add791d33f1dcf5b8 inherit pub_methods_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63404f7a0e435f4add791d33f1dcf5b8"></a>
virtual void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDeviceThreaded.html#a63404f7a0e435f4add791d33f1dcf5b8">runThread</a> (void *arg)=0</td></tr>
<tr class="memdesc:a63404f7a0e435f4add791d33f1dcf5b8 inherit pub_methods_classArRangeDeviceThreaded"><td class="mdescLeft">&#160;</td><td class="mdescRight">The functor you need to implement that will be the one executed by the thread. <br /></td></tr>
<tr class="separator:a63404f7a0e435f4add791d33f1dcf5b8 inherit pub_methods_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3a7a6e1eea852d3ffd8c513a9e98ea0 inherit pub_methods_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3a7a6e1eea852d3ffd8c513a9e98ea0"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDeviceThreaded.html#ad3a7a6e1eea852d3ffd8c513a9e98ea0">stopRunning</a> (void)</td></tr>
<tr class="memdesc:ad3a7a6e1eea852d3ffd8c513a9e98ea0 inherit pub_methods_classArRangeDeviceThreaded"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stop the thread. <br /></td></tr>
<tr class="separator:ad3a7a6e1eea852d3ffd8c513a9e98ea0 inherit pub_methods_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb7d3985280dc53777bb2eca57f37442 inherit pub_methods_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acb7d3985280dc53777bb2eca57f37442"></a>
virtual int&#160;</td><td class="memItemRight" valign="bottom"><b>tryLockDevice</b> (void)</td></tr>
<tr class="separator:acb7d3985280dc53777bb2eca57f37442 inherit pub_methods_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74a529d4e24394c15877c541166d1b80 inherit pub_methods_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74a529d4e24394c15877c541166d1b80"></a>
virtual int&#160;</td><td class="memItemRight" valign="bottom"><b>unlockDevice</b> (void)</td></tr>
<tr class="separator:a74a529d4e24394c15877c541166d1b80 inherit pub_methods_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ef50ea3df3fcf868bd1890640cacd02 inherit pub_methods_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5ef50ea3df3fcf868bd1890640cacd02"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDeviceThreaded.html#a5ef50ea3df3fcf868bd1890640cacd02">~ArRangeDeviceThreaded</a> ()</td></tr>
<tr class="memdesc:a5ef50ea3df3fcf868bd1890640cacd02 inherit pub_methods_classArRangeDeviceThreaded"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:a5ef50ea3df3fcf868bd1890640cacd02 inherit pub_methods_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classArRangeDevice"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classArRangeDevice')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classArRangeDevice.html">ArRangeDevice</a></td></tr>
<tr class="memitem:a06398798458c23f70065baac04471146 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06398798458c23f70065baac04471146"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a06398798458c23f70065baac04471146">addReading</a> (double x, double y, bool *wasAdded=NULL)</td></tr>
<tr class="memdesc:a06398798458c23f70065baac04471146 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a reading to the buffer For use by subclasses only. <br /></td></tr>
<tr class="separator:a06398798458c23f70065baac04471146 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5317e9755d5ef4ddda1acbfd5c79f2f inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#ae5317e9755d5ef4ddda1acbfd5c79f2f">ArRangeDevice</a> (size_t currentBufferSize, size_t cumulativeBufferSize, const char *name, unsigned int maxRange, int maxSecondsToKeepCurrent=0, int maxSecondsToKeepCumulative=0, double maxDistToKeepCumulative=0, bool locationDependent=false)</td></tr>
<tr class="memdesc:ae5317e9755d5ef4ddda1acbfd5c79f2f inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#ae5317e9755d5ef4ddda1acbfd5c79f2f">More...</a><br /></td></tr>
<tr class="separator:ae5317e9755d5ef4ddda1acbfd5c79f2f inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20c90a21b4f4a1c51bc9d124e217a8ef inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a20c90a21b4f4a1c51bc9d124e217a8ef"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a20c90a21b4f4a1c51bc9d124e217a8ef">clearCumulativeOlderThan</a> (int milliSeconds)</td></tr>
<tr class="memdesc:a20c90a21b4f4a1c51bc9d124e217a8ef inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears all the cumulative readings older than this number of milliseconds. <br /></td></tr>
<tr class="separator:a20c90a21b4f4a1c51bc9d124e217a8ef inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adcd491aff714eb3a6924b63d12d65351 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adcd491aff714eb3a6924b63d12d65351"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#adcd491aff714eb3a6924b63d12d65351">clearCumulativeOlderThanSeconds</a> (int seconds)</td></tr>
<tr class="memdesc:adcd491aff714eb3a6924b63d12d65351 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears all the cumulative readings older than this number of seconds. <br /></td></tr>
<tr class="separator:adcd491aff714eb3a6924b63d12d65351 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82eb3d017534465a60b384ac56f1d2e8 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a82eb3d017534465a60b384ac56f1d2e8"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a82eb3d017534465a60b384ac56f1d2e8">clearCumulativeReadings</a> (void)</td></tr>
<tr class="memdesc:a82eb3d017534465a60b384ac56f1d2e8 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears all the cumulative readings. <br /></td></tr>
<tr class="separator:a82eb3d017534465a60b384ac56f1d2e8 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8eb9b6ff83ae33a4a5bbe22eb825d1f5 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8eb9b6ff83ae33a4a5bbe22eb825d1f5"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a8eb9b6ff83ae33a4a5bbe22eb825d1f5">clearCurrentReadings</a> (void)</td></tr>
<tr class="memdesc:a8eb9b6ff83ae33a4a5bbe22eb825d1f5 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears all the current readings. <br /></td></tr>
<tr class="separator:a8eb9b6ff83ae33a4a5bbe22eb825d1f5 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adeab2edd7763ac30d2b33c1cf08bb915 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#adeab2edd7763ac30d2b33c1cf08bb915">cumulativeReadingBox</a> (double x1, double y1, double x2, double y2, <a class="el" href="classArPose.html">ArPose</a> *readingPos=NULL) const </td></tr>
<tr class="memdesc:adeab2edd7763ac30d2b33c1cf08bb915 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the closest current reading from the given box region.  <a href="#adeab2edd7763ac30d2b33c1cf08bb915">More...</a><br /></td></tr>
<tr class="separator:adeab2edd7763ac30d2b33c1cf08bb915 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c898926eb1c04ed457c8e5c3e7566e3 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a3c898926eb1c04ed457c8e5c3e7566e3">cumulativeReadingPolar</a> (double startAngle, double endAngle, double *angle=NULL) const </td></tr>
<tr class="memdesc:a3c898926eb1c04ed457c8e5c3e7566e3 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the closest cumulative reading in the given polar region.  <a href="#a3c898926eb1c04ed457c8e5c3e7566e3">More...</a><br /></td></tr>
<tr class="separator:a3c898926eb1c04ed457c8e5c3e7566e3 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac262870eb43b21b1be17ee8621eb3b91 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#ac262870eb43b21b1be17ee8621eb3b91">currentReadingBox</a> (double x1, double y1, double x2, double y2, <a class="el" href="classArPose.html">ArPose</a> *readingPos=NULL) const </td></tr>
<tr class="memdesc:ac262870eb43b21b1be17ee8621eb3b91 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the closest current reading from the given box region.  <a href="#ac262870eb43b21b1be17ee8621eb3b91">More...</a><br /></td></tr>
<tr class="separator:ac262870eb43b21b1be17ee8621eb3b91 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a27b080d64bdedd8f593ffcc6c373d609 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a27b080d64bdedd8f593ffcc6c373d609">currentReadingPolar</a> (double startAngle, double endAngle, double *angle=NULL) const </td></tr>
<tr class="memdesc:a27b080d64bdedd8f593ffcc6c373d609 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the closest current reading in the given polar region.  <a href="#a27b080d64bdedd8f593ffcc6c373d609">More...</a><br /></td></tr>
<tr class="separator:a27b080d64bdedd8f593ffcc6c373d609 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf6c1ba0cd2ac91887cac2856e048c77 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaf6c1ba0cd2ac91887cac2856e048c77"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#aaf6c1ba0cd2ac91887cac2856e048c77">filterCallback</a> (void)</td></tr>
<tr class="memdesc:aaf6c1ba0cd2ac91887cac2856e048c77 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal function to filter the readings based on age and distance. <br /></td></tr>
<tr class="separator:aaf6c1ba0cd2ac91887cac2856e048c77 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08ad025cfa7204fb601f8b5de95bde9b inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual const std::list&lt; <a class="el" href="classArSensorReading.html">ArSensorReading</a> * &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a08ad025cfa7204fb601f8b5de95bde9b">getAdjustedRawReadings</a> (void) const </td></tr>
<tr class="memdesc:a08ad025cfa7204fb601f8b5de95bde9b inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the raw unfiltered readings from the device (but pose takens are corrected)  <a href="#a08ad025cfa7204fb601f8b5de95bde9b">More...</a><br /></td></tr>
<tr class="separator:a08ad025cfa7204fb601f8b5de95bde9b inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac41b98c9f5fdef7916a09433f871e940 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; <a class="el" href="classArSensorReading.html">ArSensorReading</a> &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#ac41b98c9f5fdef7916a09433f871e940">getAdjustedRawReadingsAsVector</a> (void)</td></tr>
<tr class="memdesc:ac41b98c9f5fdef7916a09433f871e940 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the raw adjusted readings from the device into a vector.  <a href="#ac41b98c9f5fdef7916a09433f871e940">More...</a><br /></td></tr>
<tr class="separator:ac41b98c9f5fdef7916a09433f871e940 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad3ac9142453f941bc92ba241436453d inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual const std::list&lt; <a class="el" href="classArPoseWithTime.html">ArPoseWithTime</a> * &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#aad3ac9142453f941bc92ba241436453d">getCumulativeBuffer</a> (void) const </td></tr>
<tr class="memdesc:aad3ac9142453f941bc92ba241436453d inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the current buffer of readings.  <a href="#aad3ac9142453f941bc92ba241436453d">More...</a><br /></td></tr>
<tr class="separator:aad3ac9142453f941bc92ba241436453d inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83eb459ed07f7ed361cacc7212db35dd inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83eb459ed07f7ed361cacc7212db35dd"></a>
virtual std::list&lt; <a class="el" href="classArPoseWithTime.html">ArPoseWithTime</a> * &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a83eb459ed07f7ed361cacc7212db35dd">getCumulativeBuffer</a> (void)</td></tr>
<tr class="memdesc:a83eb459ed07f7ed361cacc7212db35dd inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the current buffer of readings. <br /></td></tr>
<tr class="separator:a83eb459ed07f7ed361cacc7212db35dd inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa8030e121b625a123286f98a328a5b2 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; <a class="el" href="classArPoseWithTime.html">ArPoseWithTime</a> &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#aaa8030e121b625a123286f98a328a5b2">getCumulativeBufferAsVector</a> (void)</td></tr>
<tr class="memdesc:aaa8030e121b625a123286f98a328a5b2 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the cumulative buffer of readings as a vector.  <a href="#aaa8030e121b625a123286f98a328a5b2">More...</a><br /></td></tr>
<tr class="separator:aaa8030e121b625a123286f98a328a5b2 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49e418e0f7970357893d010d02def770 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a49e418e0f7970357893d010d02def770"></a>
virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a49e418e0f7970357893d010d02def770">getCumulativeBufferSize</a> (void) const </td></tr>
<tr class="memdesc:a49e418e0f7970357893d010d02def770 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the maximum size of the buffer for cumulative readings. <br /></td></tr>
<tr class="separator:a49e418e0f7970357893d010d02def770 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69d14df2fcd274798d4a886a7b926bff inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a69d14df2fcd274798d4a886a7b926bff"></a>
virtual <a class="el" href="classArDrawingData.html">ArDrawingData</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a69d14df2fcd274798d4a886a7b926bff">getCumulativeDrawingData</a> (void)</td></tr>
<tr class="memdesc:a69d14df2fcd274798d4a886a7b926bff inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets data used for visualizing the cumulative buffer (see ArNetworking) <br /></td></tr>
<tr class="separator:a69d14df2fcd274798d4a886a7b926bff inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefc6078a128d80de304d5b978baaf31d inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classArRangeBuffer.html">ArRangeBuffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#aefc6078a128d80de304d5b978baaf31d">getCumulativeRangeBuffer</a> (void) const </td></tr>
<tr class="memdesc:aefc6078a128d80de304d5b978baaf31d inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the cumulative range buffer.  <a href="#aefc6078a128d80de304d5b978baaf31d">More...</a><br /></td></tr>
<tr class="separator:aefc6078a128d80de304d5b978baaf31d inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a064f0165f2a406145e6a8939fd17dfb9 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a064f0165f2a406145e6a8939fd17dfb9"></a>
virtual <a class="el" href="classArRangeBuffer.html">ArRangeBuffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a064f0165f2a406145e6a8939fd17dfb9">getCumulativeRangeBuffer</a> (void)</td></tr>
<tr class="memdesc:a064f0165f2a406145e6a8939fd17dfb9 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the cumulative range buffer. <br /></td></tr>
<tr class="separator:a064f0165f2a406145e6a8939fd17dfb9 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a072ac84980687ed353b3e5c2e36d6d68 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual const std::list&lt; <a class="el" href="classArPoseWithTime.html">ArPoseWithTime</a> * &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a072ac84980687ed353b3e5c2e36d6d68">getCurrentBuffer</a> (void) const </td></tr>
<tr class="memdesc:a072ac84980687ed353b3e5c2e36d6d68 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the current buffer of readings.  <a href="#a072ac84980687ed353b3e5c2e36d6d68">More...</a><br /></td></tr>
<tr class="separator:a072ac84980687ed353b3e5c2e36d6d68 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1395143f849a819e08a10bf6542503ca inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1395143f849a819e08a10bf6542503ca"></a>
virtual std::list&lt; <a class="el" href="classArPoseWithTime.html">ArPoseWithTime</a> * &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a1395143f849a819e08a10bf6542503ca">getCurrentBuffer</a> (void)</td></tr>
<tr class="memdesc:a1395143f849a819e08a10bf6542503ca inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the current buffer of readings. <br /></td></tr>
<tr class="separator:a1395143f849a819e08a10bf6542503ca inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91c1207063423f113406c9de528fc320 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; <a class="el" href="classArPoseWithTime.html">ArPoseWithTime</a> &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a91c1207063423f113406c9de528fc320">getCurrentBufferAsVector</a> (void)</td></tr>
<tr class="memdesc:a91c1207063423f113406c9de528fc320 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the current buffer of readings as a vector.  <a href="#a91c1207063423f113406c9de528fc320">More...</a><br /></td></tr>
<tr class="separator:a91c1207063423f113406c9de528fc320 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1ed5e194cea9d9d68012c783c53f9be inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af1ed5e194cea9d9d68012c783c53f9be"></a>
virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#af1ed5e194cea9d9d68012c783c53f9be">getCurrentBufferSize</a> (void) const </td></tr>
<tr class="memdesc:af1ed5e194cea9d9d68012c783c53f9be inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the maximum size of the buffer for current readings. <br /></td></tr>
<tr class="separator:af1ed5e194cea9d9d68012c783c53f9be inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbebb9e3252d1449acff674ebc0c7a10 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acbebb9e3252d1449acff674ebc0c7a10"></a>
virtual <a class="el" href="classArDrawingData.html">ArDrawingData</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#acbebb9e3252d1449acff674ebc0c7a10">getCurrentDrawingData</a> (void)</td></tr>
<tr class="memdesc:acbebb9e3252d1449acff674ebc0c7a10 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets data used for visualizing the current buffer (see ArNetworking) <br /></td></tr>
<tr class="separator:acbebb9e3252d1449acff674ebc0c7a10 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5e497d7893beb13ef903861ba909087 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classArRangeBuffer.html">ArRangeBuffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#ad5e497d7893beb13ef903861ba909087">getCurrentRangeBuffer</a> (void) const </td></tr>
<tr class="memdesc:ad5e497d7893beb13ef903861ba909087 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the current range buffer.  <a href="#ad5e497d7893beb13ef903861ba909087">More...</a><br /></td></tr>
<tr class="separator:ad5e497d7893beb13ef903861ba909087 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acf6690dffb87973976b557b8190162e8 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf6690dffb87973976b557b8190162e8"></a>
virtual <a class="el" href="classArRangeBuffer.html">ArRangeBuffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#acf6690dffb87973976b557b8190162e8">getCurrentRangeBuffer</a> (void)</td></tr>
<tr class="memdesc:acf6690dffb87973976b557b8190162e8 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the current range buffer. <br /></td></tr>
<tr class="separator:acf6690dffb87973976b557b8190162e8 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefc5cdd9adb55399d4e0725754c418ca inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#aefc5cdd9adb55399d4e0725754c418ca">getMaxDistToKeepCumulative</a> (void)</td></tr>
<tr class="memdesc:aefc5cdd9adb55399d4e0725754c418ca inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">sets the maximum distance cumulative readings can be from current pose  <a href="#aefc5cdd9adb55399d4e0725754c418ca">More...</a><br /></td></tr>
<tr class="separator:aefc5cdd9adb55399d4e0725754c418ca inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a506d33c0b4e405476ce2b56097bcbce8 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a506d33c0b4e405476ce2b56097bcbce8">getMaxInsertDistCumulative</a> (void)</td></tr>
<tr class="memdesc:a506d33c0b4e405476ce2b56097bcbce8 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the maximum distance a cumulative reading can be from the robot and still be inserted.  <a href="#a506d33c0b4e405476ce2b56097bcbce8">More...</a><br /></td></tr>
<tr class="separator:a506d33c0b4e405476ce2b56097bcbce8 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a532ea3f49df7591a9ff537743352746e inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a532ea3f49df7591a9ff537743352746e"></a>
virtual unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a532ea3f49df7591a9ff537743352746e">getMaxRange</a> (void) const </td></tr>
<tr class="memdesc:a532ea3f49df7591a9ff537743352746e inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the maximum range for this device. <br /></td></tr>
<tr class="separator:a532ea3f49df7591a9ff537743352746e inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f9c853607709dd259d406c0356edc5b inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a3f9c853607709dd259d406c0356edc5b">getMaxSecondsToKeepCumulative</a> (void)</td></tr>
<tr class="memdesc:a3f9c853607709dd259d406c0356edc5b inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">gets the maximum seconds to keep current readings around  <a href="#a3f9c853607709dd259d406c0356edc5b">More...</a><br /></td></tr>
<tr class="separator:a3f9c853607709dd259d406c0356edc5b inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51152724f047e69c2aec79bde36ece1f inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a51152724f047e69c2aec79bde36ece1f">getMaxSecondsToKeepCurrent</a> (void)</td></tr>
<tr class="memdesc:a51152724f047e69c2aec79bde36ece1f inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">gets the maximum seconds to keep current readings around  <a href="#a51152724f047e69c2aec79bde36ece1f">More...</a><br /></td></tr>
<tr class="separator:a51152724f047e69c2aec79bde36ece1f inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a900eac07d508c59f5026e423e7777864 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a900eac07d508c59f5026e423e7777864">getMinDistBetweenCumulative</a> (void)</td></tr>
<tr class="memdesc:a900eac07d508c59f5026e423e7777864 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the minimum distance between cumulative readings.  <a href="#a900eac07d508c59f5026e423e7777864">More...</a><br /></td></tr>
<tr class="separator:a900eac07d508c59f5026e423e7777864 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaafc983b6f747863b93c5258b18a4076 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#aaafc983b6f747863b93c5258b18a4076">getMinDistBetweenCurrent</a> (void)</td></tr>
<tr class="memdesc:aaafc983b6f747863b93c5258b18a4076 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the minimum distance between current readings.  <a href="#aaafc983b6f747863b93c5258b18a4076">More...</a><br /></td></tr>
<tr class="separator:aaafc983b6f747863b93c5258b18a4076 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf76b644d209c28628a1f7ba4047b60b inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adf76b644d209c28628a1f7ba4047b60b"></a>
virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#adf76b644d209c28628a1f7ba4047b60b">getName</a> (void) const </td></tr>
<tr class="memdesc:adf76b644d209c28628a1f7ba4047b60b inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the name of the device. <br /></td></tr>
<tr class="separator:adf76b644d209c28628a1f7ba4047b60b inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3f1591ab4bcd08ffeab0254aaf7568b inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual const std::list&lt; <a class="el" href="classArSensorReading.html">ArSensorReading</a> * &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#ac3f1591ab4bcd08ffeab0254aaf7568b">getRawReadings</a> (void) const </td></tr>
<tr class="memdesc:ac3f1591ab4bcd08ffeab0254aaf7568b inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the raw unfiltered readings from the device.  <a href="#ac3f1591ab4bcd08ffeab0254aaf7568b">More...</a><br /></td></tr>
<tr class="separator:ac3f1591ab4bcd08ffeab0254aaf7568b inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97fdf4c7e7c95ac8e5605df3c87ee1dc inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; <a class="el" href="classArSensorReading.html">ArSensorReading</a> &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a97fdf4c7e7c95ac8e5605df3c87ee1dc">getRawReadingsAsVector</a> (void)</td></tr>
<tr class="memdesc:a97fdf4c7e7c95ac8e5605df3c87ee1dc inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the raw unfiltered readings from the device into a vector.  <a href="#a97fdf4c7e7c95ac8e5605df3c87ee1dc">More...</a><br /></td></tr>
<tr class="separator:a97fdf4c7e7c95ac8e5605df3c87ee1dc inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae70473f04371cb1b4bcac83f1e2cd5a2 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae70473f04371cb1b4bcac83f1e2cd5a2"></a>
virtual <a class="el" href="classArRobot.html">ArRobot</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#ae70473f04371cb1b4bcac83f1e2cd5a2">getRobot</a> (void)</td></tr>
<tr class="memdesc:ae70473f04371cb1b4bcac83f1e2cd5a2 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the robot this device is attached to. <br /></td></tr>
<tr class="separator:ae70473f04371cb1b4bcac83f1e2cd5a2 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22e4bf48910f725221760a202206a1e9 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a22e4bf48910f725221760a202206a1e9"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a22e4bf48910f725221760a202206a1e9">isLocationDependent</a> (void)</td></tr>
<tr class="memdesc:a22e4bf48910f725221760a202206a1e9 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets if this device is location dependent or not. <br /></td></tr>
<tr class="separator:a22e4bf48910f725221760a202206a1e9 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5ac42251d038f50250117e7ae21cbdc inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac5ac42251d038f50250117e7ae21cbdc"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#ac5ac42251d038f50250117e7ae21cbdc">setCumulativeDrawingData</a> (<a class="el" href="classArDrawingData.html">ArDrawingData</a> *data, bool takeOwnershipOfData)</td></tr>
<tr class="memdesc:ac5ac42251d038f50250117e7ae21cbdc inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets data for visualizing the cumulative buffer (and if we own it) <br /></td></tr>
<tr class="separator:ac5ac42251d038f50250117e7ae21cbdc inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e73bae003a4e3f89f8bddfc843db464 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a0e73bae003a4e3f89f8bddfc843db464">setCurrentBufferSize</a> (size_t size)</td></tr>
<tr class="memdesc:a0e73bae003a4e3f89f8bddfc843db464 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the maximum size of the buffer for current readings Will be initialized to default size by <a class="el" href="classArRangeDevice.html" title="The base class for all sensing devices which return range information from the device (mounted on a r...">ArRangeDevice</a> implementation subclass, you normally do not need to set this externally.  <a href="#a0e73bae003a4e3f89f8bddfc843db464">More...</a><br /></td></tr>
<tr class="separator:a0e73bae003a4e3f89f8bddfc843db464 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b09eb692d4c9d0f9b51cca41f9e9665 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7b09eb692d4c9d0f9b51cca41f9e9665"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a7b09eb692d4c9d0f9b51cca41f9e9665">setCurrentDrawingData</a> (<a class="el" href="classArDrawingData.html">ArDrawingData</a> *data, bool takeOwnershipOfData)</td></tr>
<tr class="memdesc:a7b09eb692d4c9d0f9b51cca41f9e9665 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets data for visualizing the current buffer (and if we own it) <br /></td></tr>
<tr class="separator:a7b09eb692d4c9d0f9b51cca41f9e9665 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f1ec2efa5f2d6d34683586919847aa2 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a3f1ec2efa5f2d6d34683586919847aa2">setMaxDistToKeepCumulative</a> (double maxDistToKeepCumulative)</td></tr>
<tr class="memdesc:a3f1ec2efa5f2d6d34683586919847aa2 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">sets the maximum distance cumulative readings can be from current pose  <a href="#a3f1ec2efa5f2d6d34683586919847aa2">More...</a><br /></td></tr>
<tr class="separator:a3f1ec2efa5f2d6d34683586919847aa2 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65aaec7f213c343f6c096584928463cc inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a65aaec7f213c343f6c096584928463cc">setMaxInsertDistCumulative</a> (double maxInsertDistCumulative)</td></tr>
<tr class="memdesc:a65aaec7f213c343f6c096584928463cc inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the maximum distance a cumulative reading can be from the robot and still be inserted.  <a href="#a65aaec7f213c343f6c096584928463cc">More...</a><br /></td></tr>
<tr class="separator:a65aaec7f213c343f6c096584928463cc inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d797854910a43b6650fb4cee3d8626f inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a6d797854910a43b6650fb4cee3d8626f">setMaxSecondsToKeepCumulative</a> (int maxSecondsToKeepCumulative)</td></tr>
<tr class="memdesc:a6d797854910a43b6650fb4cee3d8626f inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">gets the maximum seconds to keep cumulative readings around  <a href="#a6d797854910a43b6650fb4cee3d8626f">More...</a><br /></td></tr>
<tr class="separator:a6d797854910a43b6650fb4cee3d8626f inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab963e49e5a08704ac08ab7eab040fa8c inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#ab963e49e5a08704ac08ab7eab040fa8c">setMaxSecondsToKeepCurrent</a> (int maxSecondsToKeepCurrent)</td></tr>
<tr class="memdesc:ab963e49e5a08704ac08ab7eab040fa8c inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the maximum seconds to keep current readings around.  <a href="#ab963e49e5a08704ac08ab7eab040fa8c">More...</a><br /></td></tr>
<tr class="separator:ab963e49e5a08704ac08ab7eab040fa8c inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd53bf7cfbba205118c79ab95c8c3f18 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#acd53bf7cfbba205118c79ab95c8c3f18">setMinDistBetweenCumulative</a> (double minDistBetweenCumulative)</td></tr>
<tr class="memdesc:acd53bf7cfbba205118c79ab95c8c3f18 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the minimum distance between cumulative readings.  <a href="#acd53bf7cfbba205118c79ab95c8c3f18">More...</a><br /></td></tr>
<tr class="separator:acd53bf7cfbba205118c79ab95c8c3f18 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3b9e8840205f7d1b60a55f27490c1ab inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#ab3b9e8840205f7d1b60a55f27490c1ab">setMinDistBetweenCurrent</a> (double minDistBetweenCurrent)</td></tr>
<tr class="memdesc:ab3b9e8840205f7d1b60a55f27490c1ab inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the minimum distance between current readings.  <a href="#ab3b9e8840205f7d1b60a55f27490c1ab">More...</a><br /></td></tr>
<tr class="separator:ab3b9e8840205f7d1b60a55f27490c1ab inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5d3eeb36b5347c006e844ee7a103b96 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab5d3eeb36b5347c006e844ee7a103b96"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#ab5d3eeb36b5347c006e844ee7a103b96">setRobot</a> (<a class="el" href="classArRobot.html">ArRobot</a> *robot)</td></tr>
<tr class="memdesc:ab5d3eeb36b5347c006e844ee7a103b96 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the robot this device is attached to. <br /></td></tr>
<tr class="separator:ab5d3eeb36b5347c006e844ee7a103b96 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a166b2f88c88663ba337db50a008b5e83 inherit pub_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a166b2f88c88663ba337db50a008b5e83"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a166b2f88c88663ba337db50a008b5e83">~ArRangeDevice</a> ()</td></tr>
<tr class="memdesc:a166b2f88c88663ba337db50a008b5e83 inherit pub_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:a166b2f88c88663ba337db50a008b5e83 inherit pub_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:ad204bf080aa736ca97f292b4922d06ca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad204bf080aa736ca97f292b4922d06ca"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ad204bf080aa736ca97f292b4922d06ca">useSimpleNamingForAllLasers</a> (void)</td></tr>
<tr class="memdesc:ad204bf080aa736ca97f292b4922d06ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Makes it so we'll apply simple naming to all the lasers. <br /></td></tr>
<tr class="separator:ad204bf080aa736ca97f292b4922d06ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:aa72202d47a9d5747b853988a624432b9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa72202d47a9d5747b853988a624432b9"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>internalBuildChoices</b> (std::map&lt; std::string, double &gt; *choices, std::string *str, std::list&lt; std::string &gt; *choicesList)</td></tr>
<tr class="separator:aa72202d47a9d5747b853988a624432b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49d3042961279cf2abe541cae1697ce4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a49d3042961279cf2abe541cae1697ce4"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>internalBuildChoicesString</b> (std::list&lt; std::string &gt; *choices, std::string *str)</td></tr>
<tr class="separator:a49d3042961279cf2abe541cae1697ce4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82b1ad4155881bd1fe1cc64ed74196c9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a82b1ad4155881bd1fe1cc64ed74196c9"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>internalCheckChoice</b> (const char *check, const char *choice, std::list&lt; std::string &gt; *choices, const char *choicesStr)</td></tr>
<tr class="separator:a82b1ad4155881bd1fe1cc64ed74196c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acdeaf357e9b7bf371ef66245fd001484"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acdeaf357e9b7bf371ef66245fd001484"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>internalCheckChoice</b> (const char *check, const char *choice, std::map&lt; std::string, double &gt; *choices, const char *choicesStr, double *choiceDouble)</td></tr>
<tr class="separator:acdeaf357e9b7bf371ef66245fd001484"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f914dfd96b9220ab54e19cbe314da46"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f914dfd96b9220ab54e19cbe314da46"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>internalGotReading</b> (void)</td></tr>
<tr class="separator:a2f914dfd96b9220ab54e19cbe314da46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa613791ee6a49d67ac1e65c58960fe8a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa613791ee6a49d67ac1e65c58960fe8a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>internalProcessReading</b> (double x, double y, unsigned int range, bool clean, bool onlyClean)</td></tr>
<tr class="separator:aa613791ee6a49d67ac1e65c58960fe8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2723d19d9890c725e598b7390299a0c5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a2723d19d9890c725e598b7390299a0c5">laserAllowAutoBaudChoices</a> (const char *defaultAutoBaudChoice, std::list&lt; std::string &gt; autoBaudChoices)</td></tr>
<tr class="memdesc:a2723d19d9890c725e598b7390299a0c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows setting the auto baud speed to one of a number of choices.  <a href="#a2723d19d9890c725e598b7390299a0c5">More...</a><br /></td></tr>
<tr class="separator:a2723d19d9890c725e598b7390299a0c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9a97064d229d52ff76f414ccf2fd07a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#ad9a97064d229d52ff76f414ccf2fd07a">laserAllowDegreesChoices</a> (const char *defaultDegreesChoice, std::map&lt; std::string, double &gt; degreesChoices)</td></tr>
<tr class="memdesc:ad9a97064d229d52ff76f414ccf2fd07a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows setting the degrees the laser uses to one of a number of choices.  <a href="#ad9a97064d229d52ff76f414ccf2fd07a">More...</a><br /></td></tr>
<tr class="separator:ad9a97064d229d52ff76f414ccf2fd07a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87122e7e23a2f17fb6c4a98c7ac40221"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a87122e7e23a2f17fb6c4a98c7ac40221">laserAllowIncrementChoices</a> (const char *defaultIncrementChoice, std::map&lt; std::string, double &gt; incrementChoices)</td></tr>
<tr class="memdesc:a87122e7e23a2f17fb6c4a98c7ac40221"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows setting the increment to one of a number of choices.  <a href="#a87122e7e23a2f17fb6c4a98c7ac40221">More...</a><br /></td></tr>
<tr class="separator:a87122e7e23a2f17fb6c4a98c7ac40221"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10b21970469892caa1be8d268ef19056"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a10b21970469892caa1be8d268ef19056">laserAllowReflectorBitsChoices</a> (const char *defaultReflectorBitsChoice, std::list&lt; std::string &gt; reflectorBitsChoices)</td></tr>
<tr class="memdesc:a10b21970469892caa1be8d268ef19056"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows setting the reflector bits the laser will use to one of a number of choices.  <a href="#a10b21970469892caa1be8d268ef19056">More...</a><br /></td></tr>
<tr class="separator:a10b21970469892caa1be8d268ef19056"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25f2ed8311794b070e2ac368281cfb54"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a25f2ed8311794b070e2ac368281cfb54">laserAllowSetDegrees</a> (double defaultStartDegrees, double startDegreesMin, double startDegreesMax, double defaultEndDegrees, double endDegreesMin, double endDegreesMax)</td></tr>
<tr class="memdesc:a25f2ed8311794b070e2ac368281cfb54"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows setting the degrees the laser uses to anything in a range.  <a href="#a25f2ed8311794b070e2ac368281cfb54">More...</a><br /></td></tr>
<tr class="separator:a25f2ed8311794b070e2ac368281cfb54"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2db7ce636aea9daff1f3c759b3396b66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a2db7ce636aea9daff1f3c759b3396b66">laserAllowSetIncrement</a> (double defaultIncrement, double incrementMin, double incrementMax)</td></tr>
<tr class="memdesc:a2db7ce636aea9daff1f3c759b3396b66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows setting the increment the laser uses to anything in a range.  <a href="#a2db7ce636aea9daff1f3c759b3396b66">More...</a><br /></td></tr>
<tr class="separator:a2db7ce636aea9daff1f3c759b3396b66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02685a2a3d09e912858163a67cdbee81"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a02685a2a3d09e912858163a67cdbee81">laserAllowSetPowerControlled</a> (bool defaultPowerControlled)</td></tr>
<tr class="memdesc:a02685a2a3d09e912858163a67cdbee81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows setting if the power is controlled or not.  <a href="#a02685a2a3d09e912858163a67cdbee81">More...</a><br /></td></tr>
<tr class="separator:a02685a2a3d09e912858163a67cdbee81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa77bbc89f190ec6f026470e9263eb262"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#aa77bbc89f190ec6f026470e9263eb262">laserAllowStartingBaudChoices</a> (const char *defaultStartingBaudChoice, std::list&lt; std::string &gt; startingBaudChoices)</td></tr>
<tr class="memdesc:aa77bbc89f190ec6f026470e9263eb262"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows setting the starting baud to one of a number of choices.  <a href="#aa77bbc89f190ec6f026470e9263eb262">More...</a><br /></td></tr>
<tr class="separator:aa77bbc89f190ec6f026470e9263eb262"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a751a2ce63b1ff300fb1c62ee9e4d6d49"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a751a2ce63b1ff300fb1c62ee9e4d6d49">laserAllowUnitsChoices</a> (const char *defaultUnitsChoice, std::list&lt; std::string &gt; unitsChoices)</td></tr>
<tr class="memdesc:a751a2ce63b1ff300fb1c62ee9e4d6d49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows setting the units the laser will use to one of a number of choices.  <a href="#a751a2ce63b1ff300fb1c62ee9e4d6d49">More...</a><br /></td></tr>
<tr class="separator:a751a2ce63b1ff300fb1c62ee9e4d6d49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ce9b6c649bbaac893df0527a13edee6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a6ce9b6c649bbaac893df0527a13edee6">laserCheckLostConnection</a> (void)</td></tr>
<tr class="memdesc:a6ce9b6c649bbaac893df0527a13edee6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns if the laser has lost connection so that the subclass can do something appropriate.  <a href="#a6ce9b6c649bbaac893df0527a13edee6">More...</a><br /></td></tr>
<tr class="separator:a6ce9b6c649bbaac893df0527a13edee6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16bb1250e673605e8d6df6fe4183fd7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a16bb1250e673605e8d6df6fe4183fd7c"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a16bb1250e673605e8d6df6fe4183fd7c">laserConnect</a> (void)</td></tr>
<tr class="memdesc:a16bb1250e673605e8d6df6fe4183fd7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function for a laser to call when it connects. <br /></td></tr>
<tr class="separator:a16bb1250e673605e8d6df6fe4183fd7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4522f80d2e8b75fcee12d91f561e454a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4522f80d2e8b75fcee12d91f561e454a"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a4522f80d2e8b75fcee12d91f561e454a">laserDisconnectNormally</a> (void)</td></tr>
<tr class="memdesc:a4522f80d2e8b75fcee12d91f561e454a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function for a laser to call when it disconnects normally. <br /></td></tr>
<tr class="separator:a4522f80d2e8b75fcee12d91f561e454a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec12d2ac44b6a8fa2f92ef3f21c5957e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aec12d2ac44b6a8fa2f92ef3f21c5957e"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#aec12d2ac44b6a8fa2f92ef3f21c5957e">laserDisconnectOnError</a> (void)</td></tr>
<tr class="memdesc:aec12d2ac44b6a8fa2f92ef3f21c5957e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function for a laser to call when it loses connection. <br /></td></tr>
<tr class="separator:aec12d2ac44b6a8fa2f92ef3f21c5957e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5754853bf0032b38a83227bb9dafdba6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5754853bf0032b38a83227bb9dafdba6"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a5754853bf0032b38a83227bb9dafdba6">laserFailedConnect</a> (void)</td></tr>
<tr class="memdesc:a5754853bf0032b38a83227bb9dafdba6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function for a laser to call when it fails to connects. <br /></td></tr>
<tr class="separator:a5754853bf0032b38a83227bb9dafdba6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86f27a3ce6b983eec51cf019af825e7f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a86f27a3ce6b983eec51cf019af825e7f">laserProcessReadings</a> (void)</td></tr>
<tr class="memdesc:a86f27a3ce6b983eec51cf019af825e7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts the raw readings into the buffers (needs to be called by subclasses)  <a href="#a86f27a3ce6b983eec51cf019af825e7f">More...</a><br /></td></tr>
<tr class="separator:a86f27a3ce6b983eec51cf019af825e7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e98ec9447b39317d4a62c64ecbd924b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0e98ec9447b39317d4a62c64ecbd924b"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a0e98ec9447b39317d4a62c64ecbd924b">laserPullUnsetParamsFromRobot</a> (void)</td></tr>
<tr class="memdesc:a0e98ec9447b39317d4a62c64ecbd924b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pulls the unset params from the robot parameter file. <br /></td></tr>
<tr class="separator:a0e98ec9447b39317d4a62c64ecbd924b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b64acd0f410e645195a1540559fc69c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b64acd0f410e645195a1540559fc69c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a3b64acd0f410e645195a1540559fc69c">laserSetAbsoluteMaxRange</a> (unsigned int absoluteMaxRange)</td></tr>
<tr class="memdesc:a3b64acd0f410e645195a1540559fc69c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the absolute maximum range on the sensor. <br /></td></tr>
<tr class="separator:a3b64acd0f410e645195a1540559fc69c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c67d8b109bc777870f6b980f0b63835"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c67d8b109bc777870f6b980f0b63835"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a3c67d8b109bc777870f6b980f0b63835">laserSetDefaultPortType</a> (const char *defaultPortType)</td></tr>
<tr class="memdesc:a3c67d8b109bc777870f6b980f0b63835"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the laser's default connection port type. <br /></td></tr>
<tr class="separator:a3c67d8b109bc777870f6b980f0b63835"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a342b4b111293a15782d0d7ef7665abea"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a342b4b111293a15782d0d7ef7665abea"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#a342b4b111293a15782d0d7ef7665abea">laserSetDefaultTcpPort</a> (int defaultLaserTcpPort)</td></tr>
<tr class="memdesc:a342b4b111293a15782d0d7ef7665abea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the laser's default TCP port. <br /></td></tr>
<tr class="separator:a342b4b111293a15782d0d7ef7665abea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbfe9db8030fc4c33cc0d2464e658948"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArLaser.html#abbfe9db8030fc4c33cc0d2464e658948">laserSetName</a> (const char *name)</td></tr>
<tr class="memdesc:abbfe9db8030fc4c33cc0d2464e658948"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when the lasers name is set.  <a href="#abbfe9db8030fc4c33cc0d2464e658948">More...</a><br /></td></tr>
<tr class="separator:abbfe9db8030fc4c33cc0d2464e658948"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classArRangeDevice"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classArRangeDevice')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classArRangeDevice.html">ArRangeDevice</a></td></tr>
<tr class="memitem:a7774762a642a206a3b57bac9876ba5af inherit pro_methods_classArRangeDevice"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArRangeDevice.html#a7774762a642a206a3b57bac9876ba5af">adjustRawReadings</a> (bool interlaced)</td></tr>
<tr class="memdesc:a7774762a642a206a3b57bac9876ba5af inherit pro_methods_classArRangeDevice"><td class="mdescLeft">&#160;</td><td class="mdescRight">This call should be called by the range device every robot cycle before the range device makes new readings (and even if it isn't adding any that cycle)...  <a href="#a7774762a642a206a3b57bac9876ba5af">More...</a><br /></td></tr>
<tr class="separator:a7774762a642a206a3b57bac9876ba5af inherit pro_methods_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:af5631a34bdf23db6b87c9d95ec1bb1c5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af5631a34bdf23db6b87c9d95ec1bb1c5"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><b>myAbsoluteMaxRange</b></td></tr>
<tr class="separator:af5631a34bdf23db6b87c9d95ec1bb1c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80d7626596f33e396752e0fd65ebb60e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80d7626596f33e396752e0fd65ebb60e"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myAutoBaudChoice</b></td></tr>
<tr class="separator:a80d7626596f33e396752e0fd65ebb60e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a760fc60671ef86b1d86f167abb6f00"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8a760fc60671ef86b1d86f167abb6f00"></a>
std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myAutoBaudChoices</b></td></tr>
<tr class="separator:a8a760fc60671ef86b1d86f167abb6f00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b711a763426f6fa242823f63f595f98"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b711a763426f6fa242823f63f595f98"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myAutoBaudChoiceSet</b></td></tr>
<tr class="separator:a2b711a763426f6fa242823f63f595f98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad45c6a91a39b57642ae866a4378bea8d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad45c6a91a39b57642ae866a4378bea8d"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myAutoBaudChoicesString</b></td></tr>
<tr class="separator:ad45c6a91a39b57642ae866a4378bea8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a87ad3f2fe248e9ec6dd281dc7fadce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a87ad3f2fe248e9ec6dd281dc7fadce"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myCanChooseAutoBaud</b></td></tr>
<tr class="separator:a1a87ad3f2fe248e9ec6dd281dc7fadce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a161cbe5a950c229dc07db5215de27218"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a161cbe5a950c229dc07db5215de27218"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myCanChooseDegrees</b></td></tr>
<tr class="separator:a161cbe5a950c229dc07db5215de27218"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4856beeaa51e5b7a75a6270da1b575fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4856beeaa51e5b7a75a6270da1b575fa"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myCanChooseIncrement</b></td></tr>
<tr class="separator:a4856beeaa51e5b7a75a6270da1b575fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74e509b4f6cd60219bdef3da33bd6062"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74e509b4f6cd60219bdef3da33bd6062"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myCanChooseReflectorBits</b></td></tr>
<tr class="separator:a74e509b4f6cd60219bdef3da33bd6062"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0cb4dbd2b0ff7839fba625e441cd4042"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0cb4dbd2b0ff7839fba625e441cd4042"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myCanChooseStartingBaud</b></td></tr>
<tr class="separator:a0cb4dbd2b0ff7839fba625e441cd4042"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a374c19e6624412cd6f4ec56ed0adb4fc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a374c19e6624412cd6f4ec56ed0adb4fc"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myCanChooseUnits</b></td></tr>
<tr class="separator:a374c19e6624412cd6f4ec56ed0adb4fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19dcf84dabd03d4820244b741a9b75a1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a19dcf84dabd03d4820244b741a9b75a1"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myCanSetDegrees</b></td></tr>
<tr class="separator:a19dcf84dabd03d4820244b741a9b75a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcf659728b547e820c5d22f8919b6992"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abcf659728b547e820c5d22f8919b6992"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myCanSetIncrement</b></td></tr>
<tr class="separator:abcf659728b547e820c5d22f8919b6992"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae46c2c0b6f3aa23014d1e8d526ebc2e3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae46c2c0b6f3aa23014d1e8d526ebc2e3"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myCanSetPowerControlled</b></td></tr>
<tr class="separator:ae46c2c0b6f3aa23014d1e8d526ebc2e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17ce4e138f97a4100924d3c7ddab3a5d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a17ce4e138f97a4100924d3c7ddab3a5d"></a>
<a class="el" href="classArDeviceConnection.html">ArDeviceConnection</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>myConn</b></td></tr>
<tr class="separator:a17ce4e138f97a4100924d3c7ddab3a5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21fe19efd60d5b58c892172b96d03fa8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a21fe19efd60d5b58c892172b96d03fa8"></a>
<a class="el" href="classArCallbackList.html">ArCallbackList</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myConnectCBList</b></td></tr>
<tr class="separator:a21fe19efd60d5b58c892172b96d03fa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3c4a643040b4e89b8f356dfbe717399"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3c4a643040b4e89b8f356dfbe717399"></a>
<a class="el" href="classArMutex.html">ArMutex</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myConnMutex</b></td></tr>
<tr class="separator:ad3c4a643040b4e89b8f356dfbe717399"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa808ba6b1fc30544105b12dfe57656cf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa808ba6b1fc30544105b12dfe57656cf"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myCumulativeBufferSizeSet</b></td></tr>
<tr class="separator:aa808ba6b1fc30544105b12dfe57656cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d5e364c4c1b7b7a12b9153327350967"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0d5e364c4c1b7b7a12b9153327350967"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myCumulativeCleanDist</b></td></tr>
<tr class="separator:a0d5e364c4c1b7b7a12b9153327350967"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8424886c2d9c49cd41ac7f3a2e9eb049"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8424886c2d9c49cd41ac7f3a2e9eb049"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myCumulativeCleanDistSquared</b></td></tr>
<tr class="separator:a8424886c2d9c49cd41ac7f3a2e9eb049"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabbd6cebc47f3f8780545ddaa22ec4fc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aabbd6cebc47f3f8780545ddaa22ec4fc"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>myCumulativeCleanInterval</b></td></tr>
<tr class="separator:aabbd6cebc47f3f8780545ddaa22ec4fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e54c3996522cafaaf9799df06ac8e11"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6e54c3996522cafaaf9799df06ac8e11"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>myCumulativeCleanOffset</b></td></tr>
<tr class="separator:a6e54c3996522cafaaf9799df06ac8e11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b365effd08396e924a68db2580e11e8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b365effd08396e924a68db2580e11e8"></a>
<a class="el" href="classArTime.html">ArTime</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myCumulativeLastClean</b></td></tr>
<tr class="separator:a3b365effd08396e924a68db2580e11e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a2dd04c25e8ed83d269bfba0b929551"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a2dd04c25e8ed83d269bfba0b929551"></a>
<a class="el" href="classArCallbackList.html">ArCallbackList</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myDataCBList</b></td></tr>
<tr class="separator:a0a2dd04c25e8ed83d269bfba0b929551"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb67f9d3900150e85c4d054c6090cb4c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeb67f9d3900150e85c4d054c6090cb4c"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myDefaultPortType</b></td></tr>
<tr class="separator:aeb67f9d3900150e85c4d054c6090cb4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae22b042bc598d38216b1beb7529d707a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae22b042bc598d38216b1beb7529d707a"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>myDefaultTcpPort</b></td></tr>
<tr class="separator:ae22b042bc598d38216b1beb7529d707a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adad2af223dc9c8322406b530f7b01d51"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adad2af223dc9c8322406b530f7b01d51"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myDegreesChoice</b></td></tr>
<tr class="separator:adad2af223dc9c8322406b530f7b01d51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af051509fd5282b26679f6525685d4b34"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af051509fd5282b26679f6525685d4b34"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myDegreesChoiceDouble</b></td></tr>
<tr class="separator:af051509fd5282b26679f6525685d4b34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a725e768794acd1937638ca3544d1681d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a725e768794acd1937638ca3544d1681d"></a>
std::map&lt; std::string, double &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myDegreesChoices</b></td></tr>
<tr class="separator:a725e768794acd1937638ca3544d1681d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67d8bad3eaa801a8e703b6561faab12d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67d8bad3eaa801a8e703b6561faab12d"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myDegreesChoiceSet</b></td></tr>
<tr class="separator:a67d8bad3eaa801a8e703b6561faab12d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46ff76cba9cd24a3b609a7d16f9ea281"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a46ff76cba9cd24a3b609a7d16f9ea281"></a>
std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myDegreesChoicesList</b></td></tr>
<tr class="separator:a46ff76cba9cd24a3b609a7d16f9ea281"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a054f28888cbbc76044523112610b342f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a054f28888cbbc76044523112610b342f"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myDegreesChoicesString</b></td></tr>
<tr class="separator:a054f28888cbbc76044523112610b342f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18cc666fe1945ebdb20c0e60a5a558f1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18cc666fe1945ebdb20c0e60a5a558f1"></a>
<a class="el" href="classArCallbackList.html">ArCallbackList</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myDisconnectNormallyCBList</b></td></tr>
<tr class="separator:a18cc666fe1945ebdb20c0e60a5a558f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d7eaf00e67c5297a61293a1566b16e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6d7eaf00e67c5297a61293a1566b16e5"></a>
<a class="el" href="classArCallbackList.html">ArCallbackList</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myDisconnectOnErrorCBList</b></td></tr>
<tr class="separator:a6d7eaf00e67c5297a61293a1566b16e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ec82017a23562c143488db4046c3495"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ec82017a23562c143488db4046c3495"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myEndDegrees</b></td></tr>
<tr class="separator:a9ec82017a23562c143488db4046c3495"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a588c4442daac9e1954983ff04990f5fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a588c4442daac9e1954983ff04990f5fa"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myEndDegreesMax</b></td></tr>
<tr class="separator:a588c4442daac9e1954983ff04990f5fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b3dfd59d3faa4794323c9d19672715d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8b3dfd59d3faa4794323c9d19672715d"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myEndDegreesMin</b></td></tr>
<tr class="separator:a8b3dfd59d3faa4794323c9d19672715d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ce2487d099ccea961ac43d2244b587d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5ce2487d099ccea961ac43d2244b587d"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myEndDegreesSet</b></td></tr>
<tr class="separator:a5ce2487d099ccea961ac43d2244b587d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cb0eb5c9600007912f8a4b3c2ba5e3c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6cb0eb5c9600007912f8a4b3c2ba5e3c"></a>
<a class="el" href="classArCallbackList.html">ArCallbackList</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myFailedConnectCBList</b></td></tr>
<tr class="separator:a6cb0eb5c9600007912f8a4b3c2ba5e3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b311890e07c5dfc992707827a701af2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7b311890e07c5dfc992707827a701af2"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myFlipped</b></td></tr>
<tr class="separator:a7b311890e07c5dfc992707827a701af2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a3867154afdd22981d4d9f9c1ab4393"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7a3867154afdd22981d4d9f9c1ab4393"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myFlippedSet</b></td></tr>
<tr class="separator:a7a3867154afdd22981d4d9f9c1ab4393"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc6630542f56fbd04565693a7282bae3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adc6630542f56fbd04565693a7282bae3"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myHaveSensorPose</b></td></tr>
<tr class="separator:adc6630542f56fbd04565693a7282bae3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7eb7933cd7ce3ed5508476f4bd3df53"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab7eb7933cd7ce3ed5508476f4bd3df53"></a>
std::set&lt; int &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myIgnoreReadings</b></td></tr>
<tr class="separator:ab7eb7933cd7ce3ed5508476f4bd3df53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f082739234703c62e7c12e80df3de18"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6f082739234703c62e7c12e80df3de18"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myIncrement</b></td></tr>
<tr class="separator:a6f082739234703c62e7c12e80df3de18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49c7f92c45496d6fd5ba8e1011566c2b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a49c7f92c45496d6fd5ba8e1011566c2b"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myIncrementChoice</b></td></tr>
<tr class="separator:a49c7f92c45496d6fd5ba8e1011566c2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5abbbe64569ad05f0c638fc893aa5b1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad5abbbe64569ad05f0c638fc893aa5b1"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myIncrementChoiceDouble</b></td></tr>
<tr class="separator:ad5abbbe64569ad05f0c638fc893aa5b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1385299eae1fa98d2da3f1ce8faf0140"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1385299eae1fa98d2da3f1ce8faf0140"></a>
std::map&lt; std::string, double &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myIncrementChoices</b></td></tr>
<tr class="separator:a1385299eae1fa98d2da3f1ce8faf0140"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4752a85ff4b8a954ff6bcb2e0c91229"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa4752a85ff4b8a954ff6bcb2e0c91229"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myIncrementChoiceSet</b></td></tr>
<tr class="separator:aa4752a85ff4b8a954ff6bcb2e0c91229"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56a1c7d0b79fafc566b68f8122bcd538"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56a1c7d0b79fafc566b68f8122bcd538"></a>
std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myIncrementChoicesList</b></td></tr>
<tr class="separator:a56a1c7d0b79fafc566b68f8122bcd538"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1880b77f62a765e646c42fbc7de50391"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1880b77f62a765e646c42fbc7de50391"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myIncrementChoicesString</b></td></tr>
<tr class="separator:a1880b77f62a765e646c42fbc7de50391"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4422bca3a44912aadec570052cb65213"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4422bca3a44912aadec570052cb65213"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myIncrementMax</b></td></tr>
<tr class="separator:a4422bca3a44912aadec570052cb65213"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6f7b0cf2e5f8dbf4efc9056dc695334"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab6f7b0cf2e5f8dbf4efc9056dc695334"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myIncrementMin</b></td></tr>
<tr class="separator:ab6f7b0cf2e5f8dbf4efc9056dc695334"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a109b13a1652c2f5a90fe32a95e237da7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a109b13a1652c2f5a90fe32a95e237da7"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myIncrementSet</b></td></tr>
<tr class="separator:a109b13a1652c2f5a90fe32a95e237da7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a2f80086064b7b4f82ede2a3674034e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3a2f80086064b7b4f82ede2a3674034e"></a>
<a class="el" href="classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3">ArLog::LogLevel</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myInfoLogLevel</b></td></tr>
<tr class="separator:a3a2f80086064b7b4f82ede2a3674034e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a678d1e9868d2adc1aa841c2b16ac1582"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a678d1e9868d2adc1aa841c2b16ac1582"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>myLaserNumber</b></td></tr>
<tr class="separator:a678d1e9868d2adc1aa841c2b16ac1582"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8f7ce1e097968693e65d900e92615d3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae8f7ce1e097968693e65d900e92615d3"></a>
<a class="el" href="classArTime.html">ArTime</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myLastReading</b></td></tr>
<tr class="separator:ae8f7ce1e097968693e65d900e92615d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61528ffa708d43285f0ddbe8dade869c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a61528ffa708d43285f0ddbe8dade869c"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myMaxRangeSet</b></td></tr>
<tr class="separator:a61528ffa708d43285f0ddbe8dade869c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a279cdb41aa2b38ff8874a3e80812f47e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a279cdb41aa2b38ff8874a3e80812f47e"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myPowerControlled</b></td></tr>
<tr class="separator:a279cdb41aa2b38ff8874a3e80812f47e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4efcddc0d07cd6faf67c04ca9af11ed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af4efcddc0d07cd6faf67c04ca9af11ed"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myPowerControlledSet</b></td></tr>
<tr class="separator:af4efcddc0d07cd6faf67c04ca9af11ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a514ad81fafbb464f2186d224678f1573"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a514ad81fafbb464f2186d224678f1573"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>myReadingCount</b></td></tr>
<tr class="separator:a514ad81fafbb464f2186d224678f1573"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4caa0701fa81f27e9df1ac7463e3cd44"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4caa0701fa81f27e9df1ac7463e3cd44"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>myReadingCurrentCount</b></td></tr>
<tr class="separator:a4caa0701fa81f27e9df1ac7463e3cd44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f7162e9244c8b12b69972ef539cc814"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f7162e9244c8b12b69972ef539cc814"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myReflectorBitsChoice</b></td></tr>
<tr class="separator:a2f7162e9244c8b12b69972ef539cc814"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98cb2b02069e8030fcf766b08b7b1bc3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a98cb2b02069e8030fcf766b08b7b1bc3"></a>
std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myReflectorBitsChoices</b></td></tr>
<tr class="separator:a98cb2b02069e8030fcf766b08b7b1bc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ed823f68a96140bfdc920f96b036d86"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ed823f68a96140bfdc920f96b036d86"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myReflectorBitsChoiceSet</b></td></tr>
<tr class="separator:a7ed823f68a96140bfdc920f96b036d86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e60d66ef1a91878f6f1d41ec229fb79"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9e60d66ef1a91878f6f1d41ec229fb79"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myReflectorBitsChoicesString</b></td></tr>
<tr class="separator:a9e60d66ef1a91878f6f1d41ec229fb79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9646ae0994c832fdd083f0ae74c3a9b4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9646ae0994c832fdd083f0ae74c3a9b4"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myRobotRunningAndConnected</b></td></tr>
<tr class="separator:a9646ae0994c832fdd083f0ae74c3a9b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcfea8254fc4b3464d42eceb5dd32ab2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abcfea8254fc4b3464d42eceb5dd32ab2"></a>
<a class="el" href="classArPose.html">ArPose</a>&#160;</td><td class="memItemRight" valign="bottom"><b>mySensorPose</b></td></tr>
<tr class="separator:abcfea8254fc4b3464d42eceb5dd32ab2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5763704cc5ef134ec7ce56c8f748837c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5763704cc5ef134ec7ce56c8f748837c"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>mySensorZ</b></td></tr>
<tr class="separator:a5763704cc5ef134ec7ce56c8f748837c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ba0725a1563720caeb3fd49071978da"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ba0725a1563720caeb3fd49071978da"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myStartDegrees</b></td></tr>
<tr class="separator:a9ba0725a1563720caeb3fd49071978da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac37f44886305184c0c29db89e9317c34"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac37f44886305184c0c29db89e9317c34"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myStartDegreesMax</b></td></tr>
<tr class="separator:ac37f44886305184c0c29db89e9317c34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae509314ac8b5954f35106734da189a69"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae509314ac8b5954f35106734da189a69"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myStartDegreesMin</b></td></tr>
<tr class="separator:ae509314ac8b5954f35106734da189a69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c1bdf4beafd8e87fd566ed057ce34ad"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5c1bdf4beafd8e87fd566ed057ce34ad"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myStartDegreesSet</b></td></tr>
<tr class="separator:a5c1bdf4beafd8e87fd566ed057ce34ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adcf5c788d41c58dd7921208914b71fc4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adcf5c788d41c58dd7921208914b71fc4"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myStartingBaudChoice</b></td></tr>
<tr class="separator:adcf5c788d41c58dd7921208914b71fc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8df5a384a813a624a76d56785bb5e0c3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8df5a384a813a624a76d56785bb5e0c3"></a>
std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myStartingBaudChoices</b></td></tr>
<tr class="separator:a8df5a384a813a624a76d56785bb5e0c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f1fd99211529e9a362bc8883202ca06"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f1fd99211529e9a362bc8883202ca06"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myStartingBaudChoiceSet</b></td></tr>
<tr class="separator:a5f1fd99211529e9a362bc8883202ca06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4913838b89b80d228821a15d71e49aa5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4913838b89b80d228821a15d71e49aa5"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myStartingBaudChoicesString</b></td></tr>
<tr class="separator:a4913838b89b80d228821a15d71e49aa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00e374397649c767da8a3cabbcc9587c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a00e374397649c767da8a3cabbcc9587c"></a>
time_t&#160;</td><td class="memItemRight" valign="bottom"><b>myTimeLastReading</b></td></tr>
<tr class="separator:a00e374397649c767da8a3cabbcc9587c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab42bd151bbb8e45981f4d803c853ac1d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab42bd151bbb8e45981f4d803c853ac1d"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myTimeoutSeconds</b></td></tr>
<tr class="separator:ab42bd151bbb8e45981f4d803c853ac1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab33834f258a74d085b625a81a98430a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab33834f258a74d085b625a81a98430a4"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myUnitsChoice</b></td></tr>
<tr class="separator:ab33834f258a74d085b625a81a98430a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a035639ace8b2ae23fc9621c8727c294a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a035639ace8b2ae23fc9621c8727c294a"></a>
std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myUnitsChoices</b></td></tr>
<tr class="separator:a035639ace8b2ae23fc9621c8727c294a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d7ba2e027e3d2a31b83fafb498010f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7d7ba2e027e3d2a31b83fafb498010f4"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myUnitsChoiceSet</b></td></tr>
<tr class="separator:a7d7ba2e027e3d2a31b83fafb498010f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9623b0d3a5599b94d0a72eed7310c35e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9623b0d3a5599b94d0a72eed7310c35e"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myUnitsChoicesString</b></td></tr>
<tr class="separator:a9623b0d3a5599b94d0a72eed7310c35e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classArRangeDeviceThreaded"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classArRangeDeviceThreaded')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classArRangeDeviceThreaded.html">ArRangeDeviceThreaded</a></td></tr>
<tr class="memitem:a3e3ccbaeafad73d24a2b11a088556e60 inherit pro_attribs_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3e3ccbaeafad73d24a2b11a088556e60"></a>
<a class="el" href="classArRetFunctor1C.html">ArRetFunctor1C</a>&lt; void *, <a class="el" href="classArRangeDeviceThreaded.html">ArRangeDeviceThreaded</a>, void * &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myRunThreadCB</b></td></tr>
<tr class="separator:a3e3ccbaeafad73d24a2b11a088556e60 inherit pro_attribs_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a487e7ed9e2f5d54a423e519757e0c6ce inherit pro_attribs_classArRangeDeviceThreaded"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a487e7ed9e2f5d54a423e519757e0c6ce"></a>
<a class="el" href="classArFunctorASyncTask.html">ArFunctorASyncTask</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myTask</b></td></tr>
<tr class="separator:a487e7ed9e2f5d54a423e519757e0c6ce inherit pro_attribs_classArRangeDeviceThreaded"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classArRangeDevice"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classArRangeDevice')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classArRangeDevice.html">ArRangeDevice</a></td></tr>
<tr class="memitem:afa6d02a16900d73887a8004d3e239278 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa6d02a16900d73887a8004d3e239278"></a>
std::list&lt; <a class="el" href="classArSensorReading.html">ArSensorReading</a> * &gt; *&#160;</td><td class="memItemRight" valign="bottom"><b>myAdjustedRawReadings</b></td></tr>
<tr class="separator:afa6d02a16900d73887a8004d3e239278 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8db7c1b2099396b066f5645e80547e93 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8db7c1b2099396b066f5645e80547e93"></a>
std::vector&lt; <a class="el" href="classArSensorReading.html">ArSensorReading</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myAdjustedRawReadingsVector</b></td></tr>
<tr class="separator:a8db7c1b2099396b066f5645e80547e93 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5ce26c1762c4bb167601c3c09260bbe inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad5ce26c1762c4bb167601c3c09260bbe"></a>
<a class="el" href="classArRangeBuffer.html">ArRangeBuffer</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myCumulativeBuffer</b></td></tr>
<tr class="separator:ad5ce26c1762c4bb167601c3c09260bbe inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace130bb2f40f0179bd455df84cb8bd88 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace130bb2f40f0179bd455df84cb8bd88"></a>
<a class="el" href="classArDrawingData.html">ArDrawingData</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>myCumulativeDrawingData</b></td></tr>
<tr class="separator:ace130bb2f40f0179bd455df84cb8bd88 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8be8e72cbac3f38c430c72b279de2a6 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af8be8e72cbac3f38c430c72b279de2a6"></a>
<a class="el" href="classArRangeBuffer.html">ArRangeBuffer</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myCurrentBuffer</b></td></tr>
<tr class="separator:af8be8e72cbac3f38c430c72b279de2a6 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69d810d3867aa7be92560b6228f8717b inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a69d810d3867aa7be92560b6228f8717b"></a>
<a class="el" href="classArDrawingData.html">ArDrawingData</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>myCurrentDrawingData</b></td></tr>
<tr class="separator:a69d810d3867aa7be92560b6228f8717b inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ffcd7fc1f49cf175686e22c9b4fd43f inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ffcd7fc1f49cf175686e22c9b4fd43f"></a>
<a class="el" href="classArMutex.html">ArMutex</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myDeviceMutex</b></td></tr>
<tr class="separator:a9ffcd7fc1f49cf175686e22c9b4fd43f inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6032f65f02bb4bc14dacb2eee628a64c inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6032f65f02bb4bc14dacb2eee628a64c"></a>
<a class="el" href="classArFunctorC.html">ArFunctorC</a>&lt; <a class="el" href="classArRangeDevice.html">ArRangeDevice</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myFilterCB</b></td></tr>
<tr class="separator:a6032f65f02bb4bc14dacb2eee628a64c inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2222f1480d57c93193b861c087c7d502 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2222f1480d57c93193b861c087c7d502"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myIsLocationDependent</b></td></tr>
<tr class="separator:a2222f1480d57c93193b861c087c7d502 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0c63c8b7f611a97f98428d5f018c4a6 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0c63c8b7f611a97f98428d5f018c4a6"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myMaxDistToKeepCumulative</b></td></tr>
<tr class="separator:ad0c63c8b7f611a97f98428d5f018c4a6 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab74723892344efd4e702b174d345736 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aab74723892344efd4e702b174d345736"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myMaxDistToKeepCumulativeSquared</b></td></tr>
<tr class="separator:aab74723892344efd4e702b174d345736 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3383185644b9a1ce860e7d13001838d5 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3383185644b9a1ce860e7d13001838d5"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myMaxInsertDistCumulative</b></td></tr>
<tr class="separator:a3383185644b9a1ce860e7d13001838d5 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21b3dd8bb3d34a534514dc8112afba00 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a21b3dd8bb3d34a534514dc8112afba00"></a>
<a class="el" href="classArPose.html">ArPose</a>&#160;</td><td class="memItemRight" valign="bottom"><b>myMaxInsertDistCumulativePose</b></td></tr>
<tr class="separator:a21b3dd8bb3d34a534514dc8112afba00 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc9a9e1f96b36ac5685bbfe706cfe204 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adc9a9e1f96b36ac5685bbfe706cfe204"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myMaxInsertDistCumulativeSquared</b></td></tr>
<tr class="separator:adc9a9e1f96b36ac5685bbfe706cfe204 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c35fe4536d577557a9942276ab41fce inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8c35fe4536d577557a9942276ab41fce"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><b>myMaxRange</b></td></tr>
<tr class="separator:a8c35fe4536d577557a9942276ab41fce inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a309f620a84332c7c1258548776494978 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a309f620a84332c7c1258548776494978"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>myMaxSecondsToKeepCumulative</b></td></tr>
<tr class="separator:a309f620a84332c7c1258548776494978 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5c58006d4790190630b2a2543aedd37 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae5c58006d4790190630b2a2543aedd37"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>myMaxSecondsToKeepCurrent</b></td></tr>
<tr class="separator:ae5c58006d4790190630b2a2543aedd37 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9500f36938ed5273ba048bec649cba4c inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9500f36938ed5273ba048bec649cba4c"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myMinDistBetweenCumulative</b></td></tr>
<tr class="separator:a9500f36938ed5273ba048bec649cba4c inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7386deb78492c085340c3b9de8f467f inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad7386deb78492c085340c3b9de8f467f"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myMinDistBetweenCumulativeSquared</b></td></tr>
<tr class="separator:ad7386deb78492c085340c3b9de8f467f inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11ca0e64151e39728b80114f39e4499b inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a11ca0e64151e39728b80114f39e4499b"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myMinDistBetweenCurrent</b></td></tr>
<tr class="separator:a11ca0e64151e39728b80114f39e4499b inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00af2617c176f3726702f4208d14b156 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a00af2617c176f3726702f4208d14b156"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>myMinDistBetweenCurrentSquared</b></td></tr>
<tr class="separator:a00af2617c176f3726702f4208d14b156 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e41abc839a5525f42f6d8ead74a71ab inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5e41abc839a5525f42f6d8ead74a71ab"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>myName</b></td></tr>
<tr class="separator:a5e41abc839a5525f42f6d8ead74a71ab inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6091650d6b5882f21c11eb393ae56aa inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af6091650d6b5882f21c11eb393ae56aa"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myOwnCumulativeDrawingData</b></td></tr>
<tr class="separator:af6091650d6b5882f21c11eb393ae56aa inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ad57fee938b1b73104400fa033a74aa inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ad57fee938b1b73104400fa033a74aa"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>myOwnCurrentDrawingData</b></td></tr>
<tr class="separator:a9ad57fee938b1b73104400fa033a74aa inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea5307cac3fefd997e644307f6c5c129 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aea5307cac3fefd997e644307f6c5c129"></a>
std::list&lt; <a class="el" href="classArSensorReading.html">ArSensorReading</a> * &gt; *&#160;</td><td class="memItemRight" valign="bottom"><b>myRawReadings</b></td></tr>
<tr class="separator:aea5307cac3fefd997e644307f6c5c129 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3053a123a93b8c8f9e4e92838136f6aa inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3053a123a93b8c8f9e4e92838136f6aa"></a>
std::vector&lt; <a class="el" href="classArSensorReading.html">ArSensorReading</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>myRawReadingsVector</b></td></tr>
<tr class="separator:a3053a123a93b8c8f9e4e92838136f6aa inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29abe2d368550e7a5756ece2908aadc6 inherit pro_attribs_classArRangeDevice"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a29abe2d368550e7a5756ece2908aadc6"></a>
<a class="el" href="classArRobot.html">ArRobot</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>myRobot</b></td></tr>
<tr class="separator:a29abe2d368550e7a5756ece2908aadc6 inherit pro_attribs_classArRangeDevice"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-static-attribs"></a>
Static Protected Attributes</h2></td></tr>
<tr class="memitem:ab97cad3ddc93393db1c8c656ea3d447f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab97cad3ddc93393db1c8c656ea3d447f"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><b>ourUseSimpleNaming</b> = false</td></tr>
<tr class="separator:ab97cad3ddc93393db1c8c656ea3d447f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classArRangeDevice.html" title="The base class for all sensing devices which return range information from the device (mounted on a r...">ArRangeDevice</a> interface specialized for laser rangefinder sensors; see <a class="el" href="classArRangeDevice.html" title="The base class for all sensing devices which return range information from the device (mounted on a r...">ArRangeDevice</a> for more data access methods. </p>
<p>This class is a subclass of <a class="el" href="classArRangeDeviceThreaded.html" title="A range device which can run in its own thread. ">ArRangeDeviceThreaded</a> meant for any planar scanning lasers, like the SICK lasers, Hokoyo URG series lasers, etc. Unlike other base classes this contains the superset of everything that may need to be configured on any of the sensors, even though some subclasses may only provide some of those parameters and features. (This allows the configuration interfaces and parameter files to work for any laser type.)</p>
<p>Normally, a program does not define or create any <a class="el" href="classArLaser.html" title="ArRangeDevice interface specialized for laser rangefinder sensors; see ArRangeDevice for more data ac...">ArLaser</a> objects directly. Instead, objects (device-specific subclasses of <a class="el" href="classArLaser.html" title="ArRangeDevice interface specialized for laser rangefinder sensors; see ArRangeDevice for more data ac...">ArLaser</a>) are created by <a class="el" href="classArLaserConnector.html#ab97ce6a5fedebf44526773bc674b970e" title="Connects all the lasers the robot has that should be auto connected. ">ArLaserConnector::connectLasers()</a> based on the robot parameter file and command line arguments, and the resulting <a class="el" href="classArLaser.html" title="ArRangeDevice interface specialized for laser rangefinder sensors; see ArRangeDevice for more data ac...">ArLaser</a> objects are stored in the <a class="el" href="classArRobot.html" title="Central class for communicating with and operating the robot. ">ArRobot</a> object Use <a class="el" href="classArRobot.html#a62ad0a5f2cc0973f08f8d85bea1d5d7b" title="Gets the range device list. ">ArRobot::getLaserMap()</a> or <a class="el" href="classArRobot.html#a6078092b71a4e521bbc8f0cb5c92da46" title="Finds a laser in the robot&#39;s list (laserNumber indices start at 1) ">ArRobot::findLaser()</a> to access the <a class="el" href="classArLaser.html" title="ArRangeDevice interface specialized for laser rangefinder sensors; see ArRangeDevice for more data ac...">ArLaser</a> objects after calling <a class="el" href="classArLaserConnector.html#ab97ce6a5fedebf44526773bc674b970e" title="Connects all the lasers the robot has that should be auto connected. ">ArLaserConnector::connectLasers()</a>.</p>
<p>The <a class="el" href="classArLaser.html#ab7a13b0128851a044e80efcf823ceada" title="Indicates whether it is possible to set the specific start and stop angles of sensing (field of view)...">canSetDegrees()</a>, canChooseRange(), <a class="el" href="classArLaser.html#a316b3af24695e884c8eb8d2be0424384" title="Gets if you can set an increment. ">canSetIncrement()</a>, <a class="el" href="classArLaser.html#aaf0c7f4e8800ab0dd13e01f0271ac175" title="Gets if you can choose an increment. ">canChooseIncrement()</a>, <a class="el" href="classArLaser.html#a604b3c95054903ee5f56a2556a0bbc09" title="Gets if you can choose units for the laser. ">canChooseUnits()</a>, <a class="el" href="classArLaser.html#afb48934d321c2524d6073ec30174d99d" title="Gets if you can choose reflectorBits for the laser. ">canChooseReflectorBits()</a>, <a class="el" href="classArLaser.html#aaa3f9f0ea86470726d35160babce8d4c" title="Gets if you can set powerControlled for the laser. ">canSetPowerControlled()</a>, canChooseStartBaud(), and <a class="el" href="classArLaser.html#ad3203371c8db7c2201c25869ec9ebff6" title="Gets if you can choose autoBaud for the laser. ">canChooseAutoBaud()</a> and other similar functions are used by <a class="el" href="classArLaserConnector.html" title="Create laser interface objects (for any kind of laser supported by ARIA) and connect to lasers based ...">ArLaserConnector</a> to test if a parameter is relevant to a specific laser type.</p>
<dl class="section user"><dt>Creating New ArLaser Subclasses</dt><dd>If you want to create your own new class to implement a sensor not in ARIA, create a subclass of this class. <a class="el" href="classArUrg.html" title="Hokuyo Urg laser range device. ">ArUrg</a> is the best current example of this. Call the laserAllow* functions in its constructor depending on what features that laser sensor has (use the laserAllowSet* functions if it is possible to set any value in a range, or use the laserAllow*Choices functions if it is only possible to set specific values). You may also want to use the override the laserSetName call so that your own mutexes will get named appropriately. You can use laserSetDefaultTcpPort to set the default TCP port (which you should do if the laser normally is connected to over TCP). You can use laserSetDefaultPortType to the type of port normally used (so that if a port is passed in we can make a reasonable guess as to what type, so that people don't always have to pass in a type). Before you connect you should call laserPullUnsetParams to fill in the parameters that weren't set explicitly with the default ones in the .p files. If the maximum range of the laser changes depending on settings (like on the LMS2xx) you should call laserSetAbsoluteMaxRange (after you call laserPullUnsetParamsFromRobot). Implement the blockingConnect, asyncConnect, disconnect, isConnected, and isTryingToConnect calls... while calling laserConnect, laserFailedConnect, laserDisconnectNormally, and laserDisconnectOnError calls to let the laser base class call the appropriate callbacks. You should use the laserCheckLostConnection in your runThread to see if the laser has lost connection (see its documentation for details). Then after you get your readings call laserProcessReadings to fill them from the raw buffer into the current and cumulative buffer (and call the reading callbacks). The internal* calls are all internal to the base class and shouldn't have to be used by inheriting classes. After you have created a new laser type you can add it to <a class="el" href="classAria.html" title="Contains global initialization, deinitialization and other global functions. ">Aria</a> by using the <a class="el" href="classAria.html#a57b3baa2fbaa52768e554e3b925ac212" title="Adds a type of laser for Aria to be able to create. ">Aria::laserAddCreator</a> call and then it will work like any of the built in laser types (see the documentation for that function for what the creator needs to do, and an example is ArLaserCreatorHelper in the ariaUtil.h/cpp files). Similiarly if you need a new connection type (ie not serial or tcp) you implement them and then use <a class="el" href="classAria.html#a6f304d4e47f929ae56c3b702d5f3db85" title="Adds a type of deviceConnection for Aria to be able to create. ">Aria::deviceConnectionAddCreator</a> call to add new types so they too will then be treated the same as the built in <a class="el" href="classAria.html" title="Contains global initialization, deinitialization and other global functions. ">Aria</a> ones (ArDeviceConnectionCreatorHelper in ariaUtil.h/cpp file is the example for that one).</dd></dl>
<dl class="section since"><dt>Since</dt><dd>2.7.0 </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="laserConnect_8cpp-example.html#_a20">laserConnect.cpp</a>, <a class="el" href="lasers_8cpp-example.html#_a25">lasers.cpp</a>, and <a class="el" href="lineFinderExample_8cpp-example.html#_a19">lineFinderExample.cpp</a>.</dd>
</dl></div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a9bdb83984b69159c1d60313d97e02462"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::addIgnoreReading </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>ignoreReading</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds a degree at which to ignore readings (within 1 degree of nearest integer) </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a20dafafda3fe25af5a21eaf7f1432490" title="Clears the degrees we ignore readings at. ">clearIgnoreReadings()</a> </dd>
<dd>
<a class="el" href="classArLaser.html#a42e053c1cf6c6660cf1d66e1b643415e" title="Sets the start angle, it must be between getStartDegreesMin and getStartDegreesMax. ">setStartDegrees()</a> </dd>
<dd>
<a class="el" href="classArLaser.html#a591a6986cfe51d0eca076db375d5d8fa" title="Sets the end angle, it must be between getEndDegreesMin and getEndDegreesMax. ">setEndDegrees()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="af4195556a757928218c50bda74de7541"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::addIgnoreReadings </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>ignoreReadings</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds a series of degree at which to ignore readings (within 1 degree of nearest integer) </p>
<ul>
<li>ignoreReadings a string containing a space- or comma-separated list of angles or angle ranges. Angle ranges are two separated by a '-'. Negative angles are also indicated with '-' as well. Ranges should be in the form <em>lower</em>-<em>higher</em> including on the negative side. For example, "-93--91,42,91-93" means the range from -93 to -91, the single degree at 42, and the range from 91 to 93 degrees. 0 is the center of the laser's forward field of view. <dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a9bdb83984b69159c1d60313d97e02462" title="Adds a degree at which to ignore readings (within 1 degree of nearest integer) ">addIgnoreReading()</a> </dd>
<dd>
<a class="el" href="classArLaser.html#a20dafafda3fe25af5a21eaf7f1432490" title="Clears the degrees we ignore readings at. ">clearIgnoreReadings()</a> </dd>
<dd>
<a class="el" href="classArLaser.html#a42e053c1cf6c6660cf1d66e1b643415e" title="Sets the start angle, it must be between getStartDegreesMin and getStartDegreesMax. ">setStartDegrees()</a> </dd>
<dd>
<a class="el" href="classArLaser.html#a591a6986cfe51d0eca076db375d5d8fa" title="Sets the end angle, it must be between getEndDegreesMin and getEndDegreesMax. ">setEndDegrees()</a> </dd></dl>
</li>
</ul>

</div>
</div>
<a class="anchor" id="a550a8f6002f7c6be0755d4ca5eb064a9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::applyTransform </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArTransform.html">ArTransform</a>&#160;</td>
          <td class="paramname"><em>trans</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>doCumulative</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Applies a transform to the buffers. </p>
<p>this is mostly useful for translating to/from local/global coordinates, but may have other uses. This is different from the class because it also transforms the raw readings. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">trans</td><td>the transform to apply to the data </td></tr>
    <tr><td class="paramname">doCumulative</td><td>whether to transform the cumulative buffer or not </td></tr>
  </table>
  </dd>
</dl>

<p>Reimplemented from <a class="el" href="classArRangeDevice.html#ab7e29948ca6b640272faf43dfe5c4870">ArRangeDevice</a>.</p>

</div>
</div>
<a class="anchor" id="ad3203371c8db7c2201c25869ec9ebff6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::canChooseAutoBaud </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets if you can choose autoBaud for the laser. </p>
<p>If so, call chooseAutoBaud with one of the choices in getAutoBaudChoices, and see what the choice was with getAutoBaudChoice. </p>

</div>
</div>
<a class="anchor" id="a33798560368e114da29e93592c35dd3e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::canChooseDegrees </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets if you can choose the number of degrees. </p>
<p>If so, you can call chooseDegrees with one of the strings from getDegreesChoices, and get the degrees chosen as a string with getDegreesChoice or get the degrees chosen as a double with getDegreesChoiceDouble. </p>

</div>
</div>
<a class="anchor" id="aaf0c7f4e8800ab0dd13e01f0271ac175"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::canChooseIncrement </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets if you can choose an increment. </p>
<p>If so, call chooseIncrement with one of the choices in getIncrementChoices, and get the choice as a string with getIncrementChoice or the choice as a string with getIncrementChoiceDouble. </p>

</div>
</div>
<a class="anchor" id="afb48934d321c2524d6073ec30174d99d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::canChooseReflectorBits </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets if you can choose reflectorBits for the laser. </p>
<p>If so, call chooseReflectorBits with one of the choices in getReflectorBitsChoices, and see what the choice was with getReflectorBitsChoice. </p>

</div>
</div>
<a class="anchor" id="a8daf03f2a35612748b08fcbd0490dc17"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::canChooseStartingBaud </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets if you can choose startingBaud for the laser. </p>
<p>If so, call chooseStartingBaud with one of the choices in getStartingBaudChoices, and see what the choice was with getStartingBaudChoice. </p>

</div>
</div>
<a class="anchor" id="a604b3c95054903ee5f56a2556a0bbc09"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::canChooseUnits </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets if you can choose units for the laser. </p>
<p>If so, call chooseUnits with one of the choices in getUnitsChoices, and see what the choice was with getUnitsChoice. </p>

</div>
</div>
<a class="anchor" id="ab7a13b0128851a044e80efcf823ceada"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::canSetDegrees </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Indicates whether it is possible to set the specific start and stop angles of sensing (field of view) </p>
<p>Gets if this class can set the start and end degrees with doubles.</p>
<p>If so, you can use getStartDegreesMin and getStartDegreesMax to see the valid values that you can use with setStartDegrees (and see what was set with getStartDegrees), and getEndDegreesMin and getEndDegreesMax to see the valid values that you can use with setEndDegrees (and see what was set with getEndDegrees). </p>

</div>
</div>
<a class="anchor" id="a316b3af24695e884c8eb8d2be0424384"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::canSetIncrement </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets if you can set an increment. </p>

</div>
</div>
<a class="anchor" id="aaa3f9f0ea86470726d35160babce8d4c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::canSetPowerControlled </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets if you can set powerControlled for the laser. </p>
<p>If so, call setPowerControlled to set if the power is being controlled or not, and see what the setting is with getPowerControlled. </p>

</div>
</div>
<a class="anchor" id="a84af619b88c7e66e7ef51e24d6c53825"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::chooseAutoBaud </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>reflectorBits</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the reflectorBits to one of the choices from getAutoBaudChoices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ad3203371c8db7c2201c25869ec9ebff6" title="Gets if you can choose autoBaud for the laser. ">canChooseAutoBaud</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a88431406706e2f47cf3ad1682e491f51"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::chooseDegrees </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>range</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the range to one of the choices from getDegreesChoices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a33798560368e114da29e93592c35dd3e" title="Gets if you can choose the number of degrees. ">canChooseDegrees</a> </dd></dl>

</div>
</div>
<a class="anchor" id="adc169aa8cba88a208d7891901b7767ab"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::chooseIncrement </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>increment</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the increment to one of the choices from getIncrementChoices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#aaf0c7f4e8800ab0dd13e01f0271ac175" title="Gets if you can choose an increment. ">canChooseIncrement</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a3b5990d093ca61121e59d24c45d8e9d9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::chooseReflectorBits </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>reflectorBits</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the reflectorBits to one of the choices from getReflectorBitsChoices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#afb48934d321c2524d6073ec30174d99d" title="Gets if you can choose reflectorBits for the laser. ">canChooseReflectorBits</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a92d47e68332396f96ce150c389bc630f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::chooseStartingBaud </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>reflectorBits</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the reflectorBits to one of the choices from getStartingBaudChoices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a8daf03f2a35612748b08fcbd0490dc17" title="Gets if you can choose startingBaud for the laser. ">canChooseStartingBaud</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a8ff1c78be3c183831042c48a937a1a15"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::chooseUnits </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>units</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the units to one of the choices from getUnitsChoices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a604b3c95054903ee5f56a2556a0bbc09" title="Gets if you can choose units for the laser. ">canChooseUnits</a> </dd></dl>

</div>
</div>
<a class="anchor" id="aa4fc5f2f84499590f8a18455d7f0ae1d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getAutoBaudChoice </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the reflectorBits that was chosen. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ad3203371c8db7c2201c25869ec9ebff6" title="Gets if you can choose autoBaud for the laser. ">canChooseAutoBaud</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a12ff86d24282a93bb577dbae8bd6e078"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt;std::string&gt; ArLaser::getAutoBaudChoices </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the list of reflectorBits choices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ad3203371c8db7c2201c25869ec9ebff6" title="Gets if you can choose autoBaud for the laser. ">canChooseAutoBaud</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a0ed3ef59239dc9c6caf899cf5b0ae5cf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getAutoBaudChoicesString </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets a string with the list of reflectorBits choices seperated by |s. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ad3203371c8db7c2201c25869ec9ebff6" title="Gets if you can choose autoBaud for the laser. ">canChooseAutoBaud</a> </dd></dl>

</div>
</div>
<a class="anchor" id="addae0e31dd4764aee774fa814b4e8744"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getConnectionTimeoutSeconds </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the number of seconds without a response until connection assumed lost. </p>
<p>Gets the time (miliseconds) to go without response from the laser until it is assumed that the connection with the laser has been broken and the disconnect on error events will happen.</p>
<p>If 0, then the timeout is disabled.</p>
<p>If there is no robot then there is a straightforward check of last reading time against this value. If there is a robot then it will not start the check until the laser is running and connected. </p>

</div>
</div>
<a class="anchor" id="a0d119529c9b0386408ef8b4896f673ce"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getDegreesChoice </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the range that was chosen. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a33798560368e114da29e93592c35dd3e" title="Gets if you can choose the number of degrees. ">canChooseDegrees</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a58444fa6402069c900f72ff806c58754"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getDegreesChoiceDouble </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the range that was chosen as a double. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a33798560368e114da29e93592c35dd3e" title="Gets if you can choose the number of degrees. ">canChooseDegrees</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a5bcc3d57c8ca9aeba529455fb7a0669a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt;std::string&gt; ArLaser::getDegreesChoices </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the list of range choices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a33798560368e114da29e93592c35dd3e" title="Gets if you can choose the number of degrees. ">canChooseDegrees</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a8af368e3a42c63decf990f13a7559e01"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::map&lt;std::string, double&gt; ArLaser::getDegreesChoicesMap </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the map of degrees choices to what they mean. </p>
<p>This is mostly for the simulated laser </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a33798560368e114da29e93592c35dd3e" title="Gets if you can choose the number of degrees. ">canChooseDegrees</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ad2dc9fa3f3662fbc7b1bebbc2b7ad348"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getDegreesChoicesString </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets a string with the list of degrees choices seperated by |s. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a33798560368e114da29e93592c35dd3e" title="Gets if you can choose the number of degrees. ">canChooseDegrees</a> </dd></dl>

</div>
</div>
<a class="anchor" id="aa6aa3c7373dc933b8f32bb36c23cd088"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getEndDegrees </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the end angle. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ab7a13b0128851a044e80efcf823ceada" title="Indicates whether it is possible to set the specific start and stop angles of sensing (field of view)...">canSetDegrees</a> </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="laserConnect_8cpp-example.html#a25">laserConnect.cpp</a>, and <a class="el" href="lasers_8cpp-example.html#a31">lasers.cpp</a>.</dd>
</dl>
</div>
</div>
<a class="anchor" id="ac00ecd47eb2dccf89f1ea47a1c878b15"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getEndDegreesMax </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the maximum value for the end angle. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ab7a13b0128851a044e80efcf823ceada" title="Indicates whether it is possible to set the specific start and stop angles of sensing (field of view)...">canSetDegrees</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a1a9ce63b69d7798e7c2f62c1cd870380"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getEndDegreesMin </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the minimum value for the end angle. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ab7a13b0128851a044e80efcf823ceada" title="Indicates whether it is possible to set the specific start and stop angles of sensing (field of view)...">canSetDegrees</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ac9b90b830817e39a94a0691da33d70b9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getIncrement </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the increment. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a316b3af24695e884c8eb8d2be0424384" title="Gets if you can set an increment. ">canSetIncrement</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a90c1a696bcccfc23f3fda49888f0f479"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getIncrementChoice </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the increment that was chosen. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#aaf0c7f4e8800ab0dd13e01f0271ac175" title="Gets if you can choose an increment. ">canChooseIncrement</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a939d173dd053f68caaa02699e96d186d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getIncrementChoiceDouble </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the increment that was chosen as a double. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#aaf0c7f4e8800ab0dd13e01f0271ac175" title="Gets if you can choose an increment. ">canChooseIncrement</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a65541e8c15b8374cacd9ed73dd9bca65"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt;std::string&gt; ArLaser::getIncrementChoices </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the list of increment choices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#aaf0c7f4e8800ab0dd13e01f0271ac175" title="Gets if you can choose an increment. ">canChooseIncrement</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a0a175b97d970d2ca190bb45fec3dfd5f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::map&lt;std::string, double&gt; ArLaser::getIncrementChoicesMap </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the map of increment choices to what they mean. </p>
<p>This is mostly for the simulated laser </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#aaf0c7f4e8800ab0dd13e01f0271ac175" title="Gets if you can choose an increment. ">canChooseIncrement</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a2e187c6c0415e7cadbe3383843f579df"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getIncrementChoicesString </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets a string with the list of increment choices seperated by |s. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#aaf0c7f4e8800ab0dd13e01f0271ac175" title="Gets if you can choose an increment. ">canChooseIncrement</a> </dd></dl>

</div>
</div>
<a class="anchor" id="abb5a72dde96c3e661e1a723cf75874df"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getIncrementMax </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the increment maximum. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a316b3af24695e884c8eb8d2be0424384" title="Gets if you can set an increment. ">canSetIncrement</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a09f467aeb4459d68e2a0f8d0a5a0be05"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getIncrementMin </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the increment minimum. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a316b3af24695e884c8eb8d2be0424384" title="Gets if you can set an increment. ">canSetIncrement</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ab4001602faa2ab966fe3cfc1c2e57d1c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::getPowerControlled </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets if the power is controlled. </p>
<dl class="section see"><dt>See also</dt><dd>canChoosePowerControlled </dd></dl>

</div>
</div>
<a class="anchor" id="ad3f5fa6447d883ac0e8b19858a26dff3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getReflectorBitsChoice </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the reflectorBits that was chosen. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#afb48934d321c2524d6073ec30174d99d" title="Gets if you can choose reflectorBits for the laser. ">canChooseReflectorBits</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a8feed6899f9f1597262e1733125a9c25"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt;std::string&gt; ArLaser::getReflectorBitsChoices </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the list of reflectorBits choices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#afb48934d321c2524d6073ec30174d99d" title="Gets if you can choose reflectorBits for the laser. ">canChooseReflectorBits</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a4679592efef5644276b72fb26e06176b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getReflectorBitsChoicesString </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets a string with the list of reflectorBits choices seperated by |s. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#afb48934d321c2524d6073ec30174d99d" title="Gets if you can choose reflectorBits for the laser. ">canChooseReflectorBits</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ac589039384c421703756eac2861899bf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getStartDegrees </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the start angle. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ab7a13b0128851a044e80efcf823ceada" title="Indicates whether it is possible to set the specific start and stop angles of sensing (field of view)...">canSetDegrees</a> </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="laserConnect_8cpp-example.html#a24">laserConnect.cpp</a>, and <a class="el" href="lasers_8cpp-example.html#a30">lasers.cpp</a>.</dd>
</dl>
</div>
</div>
<a class="anchor" id="a61b235df31beb691b6cc909744396a13"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getStartDegreesMax </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the maximum value for the start angle. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ab7a13b0128851a044e80efcf823ceada" title="Indicates whether it is possible to set the specific start and stop angles of sensing (field of view)...">canSetDegrees</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a60cb27a1ac5493d8b10be50e83ec6bb6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArLaser::getStartDegreesMin </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the minimum value for the start angle. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ab7a13b0128851a044e80efcf823ceada" title="Indicates whether it is possible to set the specific start and stop angles of sensing (field of view)...">canSetDegrees</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ae1c7541a0cbde32469aa5c1dbe00aed8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getStartingBaudChoice </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the reflectorBits that was chosen. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a8daf03f2a35612748b08fcbd0490dc17" title="Gets if you can choose startingBaud for the laser. ">canChooseStartingBaud</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a72e5aa6e6e796098622591b2f2bea4aa"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt;std::string&gt; ArLaser::getStartingBaudChoices </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the list of reflectorBits choices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a8daf03f2a35612748b08fcbd0490dc17" title="Gets if you can choose startingBaud for the laser. ">canChooseStartingBaud</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a7f5fc88d55dcd2034131536881a367ac"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getStartingBaudChoicesString </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets a string with the list of reflectorBits choices seperated by |s. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a8daf03f2a35612748b08fcbd0490dc17" title="Gets if you can choose startingBaud for the laser. ">canChooseStartingBaud</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a3965654085eaefbb214847054d410f58"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getUnitsChoice </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the units that was chosen. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a604b3c95054903ee5f56a2556a0bbc09" title="Gets if you can choose units for the laser. ">canChooseUnits</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a829d6f5a5b3fa2eece4f168238d73d53"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt;std::string&gt; ArLaser::getUnitsChoices </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the list of units choices. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a604b3c95054903ee5f56a2556a0bbc09" title="Gets if you can choose units for the laser. ">canChooseUnits</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a0892dc899184a732256cb51301bc1d69"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArLaser::getUnitsChoicesString </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets a string with the list of units choices seperated by |s. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a604b3c95054903ee5f56a2556a0bbc09" title="Gets if you can choose units for the laser. ">canChooseUnits</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a2723d19d9890c725e598b7390299a0c5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::laserAllowAutoBaudChoices </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>defaultAutoBaudChoice</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; std::string &gt;&#160;</td>
          <td class="paramname"><em>autoBaudChoices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Allows setting the auto baud speed to one of a number of choices. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">defaultAutoBaudChoice</td><td>Default auto baud choice. This should probably be the maximum reasonable reliable robust rate that the laser supports. The laser should autobaud up to this choice after it connects.</td></tr>
    <tr><td class="paramname">autoBaudChoices</td><td>The available choices for auto baud </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ad9a97064d229d52ff76f414ccf2fd07a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::laserAllowDegreesChoices </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>defaultDegreesChoice</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::map&lt; std::string, double &gt;&#160;</td>
          <td class="paramname"><em>degreesChoices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Allows setting the degrees the laser uses to one of a number of choices. </p>
<p>Allows the choice of the laser degrees from one of a number of choices, only one of this and laserAllowSetDegrees should be used.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">defaultDegreesChoice</td><td>The default degrees, this should be the largest value.</td></tr>
    <tr><td class="paramname">degreesChoices</td><td>this is a mapping of std::strings to doubles, the strings should be the actual available choices, and the doubles should be the numerical representation... this is so the simulated laser can behave more easily like the real lasers... and because the original sick driver used words typed out (to make problems more obvious). </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a87122e7e23a2f17fb6c4a98c7ac40221"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::laserAllowIncrementChoices </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>defaultIncrementChoice</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::map&lt; std::string, double &gt;&#160;</td>
          <td class="paramname"><em>incrementChoices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Allows setting the increment to one of a number of choices. </p>
<p>Allows the choice of increment from a limited set of values, only one of this and laserAllowSetIncrement should be used.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">defaultIncrementChoice</td><td>The default increment, this should be a reasonable value.</td></tr>
    <tr><td class="paramname">incrementChoices</td><td>this is a mapping of std::strings to doubles, the strings should be the actual available choices, and the doubles should be the numerical representation... this is so the simulated laser can behave more easily like the real lasers... and because the original sick driver used words typed out (to make problems more obvious). </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a10b21970469892caa1be8d268ef19056"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::laserAllowReflectorBitsChoices </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>defaultReflectorBitsChoice</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; std::string &gt;&#160;</td>
          <td class="paramname"><em>reflectorBitsChoices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Allows setting the reflector bits the laser will use to one of a number of choices. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">defaultReflectorBitsChoice</td><td>The default choice for reflector bits, should be a reasonable value.</td></tr>
    <tr><td class="paramname">reflectorBitsChoices</td><td>The possible choices for reflector bits </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a25f2ed8311794b070e2ac368281cfb54"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::laserAllowSetDegrees </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>defaultStartDegrees</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>startDegreesMin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>startDegreesMax</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>defaultEndDegrees</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>endDegreesMin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>endDegreesMax</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Allows setting the degrees the laser uses to anything in a range. </p>
<p>This allows the setting of the degrees the laser will use from a range for both starting and ending degrees.</p>
<p>Only one of this and laserAllowDegreesChoices should be used.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">defaultStartDegrees</td><td>The default start degrees to use, this default should probably be for the max range.</td></tr>
    <tr><td class="paramname">startDegreesMin</td><td>The minimum value for start degrees</td></tr>
    <tr><td class="paramname">startDegreesMax</td><td>The maximum value for start degrees</td></tr>
    <tr><td class="paramname">defaultEndDegrees</td><td>The default end degrees to use, this default should probably be for the max range.</td></tr>
    <tr><td class="paramname">endDegreesMin</td><td>The minimum value for end degrees</td></tr>
    <tr><td class="paramname">endDegreesMax</td><td>The maximum value for end degrees </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a2db7ce636aea9daff1f3c759b3396b66"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::laserAllowSetIncrement </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>defaultIncrement</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>incrementMin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>incrementMax</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Allows setting the increment the laser uses to anything in a range. </p>
<p>Allows the choice of increment from a range, only one of this and laserAllowIncrementChoices should be used.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">defaultIncrement</td><td>The default increment to use, this default should be a reasonable value.</td></tr>
    <tr><td class="paramname">incrementMin</td><td>The minimum value for the increment</td></tr>
    <tr><td class="paramname">incrementMax</td><td>The maximum value for the increment </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a02685a2a3d09e912858163a67cdbee81"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::laserAllowSetPowerControlled </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>defaultPowerControlled</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Allows setting if the power is controlled or not. </p>
<p>Allows settings of whether the power can be controlled or not.</p>
<p>This is mostly for devices that respond differently at power up than they do if they are already on (ie the lms2xx where it doesn't respond at all while powering up). If the communication is the same either way, you can just not set this.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">defaultPowerControlled</td><td>The default value for power controlled. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aa77bbc89f190ec6f026470e9263eb262"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::laserAllowStartingBaudChoices </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>defaultStartingBaudChoice</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; std::string &gt;&#160;</td>
          <td class="paramname"><em>startingBaudChoices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Allows setting the starting baud to one of a number of choices. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">defaultStartingBaudChoice</td><td>Default starting baud choice. This should probably stay the same as what the sensor ships with.</td></tr>
    <tr><td class="paramname">startingBaudChoices</td><td>The available choices for starting baud </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a751a2ce63b1ff300fb1c62ee9e4d6d49"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::laserAllowUnitsChoices </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>defaultUnitsChoice</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; std::string &gt;&#160;</td>
          <td class="paramname"><em>unitsChoices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Allows setting the units the laser will use to one of a number of choices. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">defaultUnitsChoice</td><td>This is the default units choice, it should be a reasonable value.</td></tr>
    <tr><td class="paramname">unitsChoices</td><td>The possible choices for units. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a6ce9b6c649bbaac893df0527a13edee6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::laserCheckLostConnection </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns if the laser has lost connection so that the subclass can do something appropriate. </p>
<p>This will check if the laser has lost connection.</p>
<p>If there is no robot it is a straightforward check of last reading time against getConnectionTimeoutSeconds. If there is a robot then it will not start the check until the laser is running and connected. </p>

</div>
</div>
<a class="anchor" id="ad47916d80345c7077e07e69d644768d2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool ArLaser::laserCheckParams </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Call the laser can implement to make sure the parameters are all okay or set the maximum range (based on the params) </p>
<p>The base laser should make sure all the parameters make sense according to what was set up as allowed.</p>
<p>This is here for two purposes. The first is to check for parameters that aren't valid because of something the base class can't check for. The second is to recalculate whatever the maximum range of the sensor is based on those settings, and call setAbsoluteMaxRange if the maximum range has changed based on the settings.</p>
<p>This is strictly an internal call, mostly for the simulated laser so that it can more closely match the real laser on complicated things like the LMS2xx where the settings for the units and bits affect what the maximum range is. </p>

</div>
</div>
<a class="anchor" id="a86f27a3ce6b983eec51cf019af825e7f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::laserProcessReadings </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Converts the raw readings into the buffers (needs to be called by subclasses) </p>
<p>Filter readings, moving them from the raw current buffer to filtered current buffer (see <a class="el" href="classArRangeDevice.html" title="The base class for all sensing devices which return range information from the device (mounted on a r...">ArRangeDevice</a>), and then also to the cumulative buffer.</p>
<p>This must be called for the laser subclass to work right.</p>
<p>This also calls the reading callbacks. </p>

</div>
</div>
<a class="anchor" id="abbfe9db8030fc4c33cc0d2464e658948"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::laserSetName </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Called when the lasers name is set. </p>
<p>This can be used to set the name on mutexes and such to match the laser's new name. </p>

</div>
</div>
<a class="anchor" id="a54b701ba0d1e820041c58cd6c552af7a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArLaser::setConnectionTimeoutSeconds </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>seconds</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets the numter of seconds without a response until connection assumed lost. </p>
<p>Sets the time to go without a response from the laser until it is assumed that the connection with the laser has been broken and the disconnect on error events will happen.</p>
<p>If there is no robot then there is a straightforward check of last reading time against this value. If there is a robot then it will not start the check until the laser is running and connected.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">seconds</td><td>if 0 or less then the connection timeout feature will be disabled, otherwise disconnect on error will be triggered after this number of miliseconds... </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a591a6986cfe51d0eca076db375d5d8fa"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::setEndDegrees </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>endDegrees</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the end angle, it must be between getEndDegreesMin and getEndDegreesMax. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ab7a13b0128851a044e80efcf823ceada" title="Indicates whether it is possible to set the specific start and stop angles of sensing (field of view)...">canSetDegrees</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ab64e257c65cae6a8c70eb585f820b490"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::setIncrement </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>increment</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the increment. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#a316b3af24695e884c8eb8d2be0424384" title="Gets if you can set an increment. ">canSetIncrement</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ad2cf1cb56e6c74a878d568553d2efbe0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::setPowerControlled </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>powerControlled</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets if the power is controlled. </p>
<dl class="section see"><dt>See also</dt><dd>canChoosePowerControlled </dd></dl>

</div>
</div>
<a class="anchor" id="a42e053c1cf6c6660cf1d66e1b643415e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArLaser::setStartDegrees </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>startDegrees</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the start angle, it must be between getStartDegreesMin and getStartDegreesMax. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classArLaser.html#ab7a13b0128851a044e80efcf823ceada" title="Indicates whether it is possible to set the specific start and stop angles of sensing (field of view)...">canSetDegrees</a> </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>ArLaser.h</li>
<li>ArLaser.cpp</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="classArLaser.html">ArLaser</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
